開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの無料、light版)
- 言語: C
- コンパイラ: UNIX ccコンパイラ (汎用UNIX)
『実践プログラミング 第3版』 (Steve Oualline (著)、 望月 康司 (監修) (翻訳)、 谷口 功 (翻訳)、 オライリー・ジャパン、1998年、ISBN978-4900900646) II部(単純なプログラミング)の9章(変数スコープおよび関数)9.7(プログラミング実習)実習9-3を解いてみる。
実習9-3.
コード(TextWrangler)
#include <stdio.h>
int count(int number, int array[], int length){
int total = 0;
if(length == 0){
return total;
}
if(array[length - 1] == number){
total++;
}
length--;
return total + count(number, array, length);
}
int main(){
int number;
int length;
char line[100];
int i;
while(1){
printf("配列の要素数を入力: ");
fgets(line,sizeof(line),stdin);
sscanf(line,"%d",&length);
int array[length];
printf("数値配列の要素を1行に1要素ずつ入力\n");
for(i = 0; i < length ; i++){
fgets(line,sizeof(line),stdin);
sscanf(line,"%d", &array[i]);
}
printf("いくつあるか数える数値を入力: ");
fgets(line,sizeof(line),stdin);
sscanf(line,"%d",&number);
printf("配列にある数値%dの個数: %d個\n",
number, count(number,array,length));
}
return (0);
}
入出力結果(Terminal)
$ cc -g -o sample sample.c $ ./sample 配列の要素数を入力: 10 数値配列の要素を1行に1要素ずつ入力 1 2 3 4 5 6 7 8 9 1 いくつあるか数える数値を入力: 1 配列にある数値1の個数: 2個 配列の要素数を入力: 10 数値配列の要素を1行に1要素ずつ入力 1 2 1 3 4 5 6 1 7 8 いくつあるか数える数値を入力: 1 配列にある数値1の個数: 3個 配列の要素数を入力: 10 数値配列の要素を1行に1要素ずつ入力 1 1 1 1 1 1 1 1 1 1 いくつあるか数える数値を入力: 1 配列にある数値1の個数: 10個 配列の要素数を入力: 5 数値配列の要素を1行に1要素ずつ入力 10 10 2 3 10 いくつあるか数える数値を入力: 10 配列にある数値10の個数: 3個 配列の要素数を入力: ^C $
0 コメント:
コメントを投稿