#99 Article 958 Posted at 1995/12/03 00:52:01 by 夢中ゆわ (MAP2717) [SAHOU.1]
Subject: Re:*6 プログラミングお作法の話 /946 ... /941 /940
> 「引数かキー入力(どちらか)で数値を読み込み、1からその数まで表示する。
> ただし、3と5と入力された数の所では数字を表示するかわりに、
> その回数だけ『にゃん』を表示する」
Cで作ってみましたにゃん。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#include <stdio.h>
#define NEKO(max) for (j=1; j<=max; j++) printf("にゃん");
#define CRLF putchar('\012');
/* maple #99 用サンプルだにゃん */
void main( void )
{
unsigned int i,j,c;
printf("数字を入れてにゃん!:");
scanf("%d",&c); /* argじゃないのにゃん */
for (i=1; i<c; i++)
{
switch (i) /* ifでもいいかにゃん */
{
case 3:
case 5: /* 変数は使えないにゃん */
NEKO(i)
break;
default:
printf("%d", i);
}
CRLF /* 改行だにゃん */
}
NEKO(c)
printf("\n★じゃぁまたね、ばいにゃん★\n"); /* おまけだにゃん */
}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
自己診断ですか?(^^;)
・CはBASICと違って文字列の管理を自分でしなきゃいけない。
従ってバッファを用意せずに済む方法があれば、そちらをとる。
・不等号は<、<=を使用(左小、右大を暗黙)
・値を返さず、簡単なものは関数じゃなくてマクロを使う。
・for の中の ; の次に空白。
・=や<=などでは、左辺右辺が簡単なときには空白を入れず
複雑になったら=の両側に空白を入れる。
・括弧は直前行と同桁。インデントは4桁。
・CRLF とか CLS とかは、よく定義して使っています(^^;)
・putcharで済むときにはprintfを使わない。
・'\xnn'を使わず、'\0nn'を使う
・コメントは大いに入れましょう(^^;)
コメント桁は出来るだけ同桁に。
未だ未だCを初めて日が浅いので、私もいっぱい勉強させていただきたいと思います。
#MAP2717 夢中ゆわ
Rem おまけだみゃぁ
Do
Input"数字を入れてみゃぁ~";A
Loop Until 0<=A
For I=1 TO A
Select Case I
Case 3,5,A
For J=1 TO I:Print "みゃぁ";:Next :Print
Case Else
Print I
End Select
Next