開発環境
- 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 コメント:
コメントを投稿