演習9ー11
問: List-9-12を、次のように書きかえたプログラムを作成せよ。
・文字列の個数を3よりも大きな値とし、その値をオブジェクト形式マクロとして定義する。
・文字列の文字数を6ではなく128とし、その値もオブジェクト形式マクロとして定義する。
・文字列の配列を読み込む関数を作成する。演習9-3と同様に、”$$$$$”を読み込んだ時点で読込みを中断・終了する。
・”$$$$$”より前に入力された全文字列を表示する。
// Ex0911.c
#include <stdio.h>
#define NO1 5
#define NO2 128
void put_strary(const char s[][NO2], int n)
{
for (int i = 0; i < n - 1; i++)
printf("s[%d] = \"%s\"\n", i, s[i]);
}
int main(void)
{
int i;
int n = 0;
char s[NO1][NO2] = { 0 };
for (i = 0; i < NO1; i++) {
printf("s[%d] : ", i);
scanf("%s", s[i]);
n++;
if (s[i][0] == '$' && s[i][1] == '$' && s[i][2] == '$' && s[i][3] == '$' && s[i][4] == '$') {
i = NO2;
}
}
put_strary(s, n);
return 0;
}
コメント
特になし。
書籍情報
コメント