- 締切済み
力を貸してください
7人の点数を格納する配列 tensu[i] の値をmain関数内で キーボード入力させ、その配列を関数 hairetsu() に引数 として与え、関数 hairetsu 内で配列の値をforと printfを 使い、表示させてください。
- sinkei
- お礼率0% (0/3)
- その他(学問・教育)
- 回答数2
- ありがとう数0
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- edomin7777
- ベストアンサー率40% (711/1750)
他の質問でも同じように言われてるようだが、ここは何かの作成を依頼するようなサイトでは有りません。 別のサイトを探しましょう。
- edomin7777
- ベストアンサー率40% (711/1750)
・言語は? ・開発環境は? ・なぜ、この「カテゴリ」?
関連するQ&A
- c言語のプログラミングについて聞きたいのですが
自分は課題で「10人分の名前と点数を入力して降順に並び替える」というプログラムを作ろうとしているのですが、なかなかうまくいきません。一応↓の形までできたのですがなぜか数字が変になります。 どうしてか教えていただけないでしょうか。 #include<stdio.h> int main(void) { int i,j; int tensu[10][3]; char namae[10][6]; for(i=0;i<10;i++){ printf("名前の入力>>"); scanf("%s",&namae[i]); printf("点数の入力>>"); scanf("%d",tensu[i]); } printf("名前 点数\n"); for(j=0;j<10;j++) { printf("%s ",&namae[j]); printf("%10d\n",tensu[j]); } return 0; } それとポインタ?みたいなのもよく理解できず、点数で降順にしたあとに点数を使って名前を並び替えるのかなと思うのですがそれもよくわかりません。 どなたか教えてください
- 締切済み
- C・C++・C#
- 教えてください!!
このソースのtensu[5]={0};の意味を詳しくお願いします。宜しくお願いします。tensu[5]では、1~100の範囲で入力してください。が実行したら出てきてしまいますが、tensu[5]={0};とやるとうまくできます。そのことを知りたいです。 宜しくお願いします。 #include <stdio.h> int main(void) { int i; int tensu[5]= {0}; int sum=0; puts("点数を入力してください"); for(i=0; i<5; i++){ printf("%2d番:", i+1); do{ if(tensu[i]<0 || tensu[i]>100){ printf("0~100の範囲で入力してください。\n"); printf("%2d番:", i+1); } scanf("%d", &tensu[i]); }while(tensu[i]<0 || tensu[i]>100); sum+=tensu[i]; } putchar('\n'); for(i=0; i<5; i++) printf("%2d番: %d\n", i+1, tensu[i]); printf("合計点: %d\n", sum); printf("平均点: %f\n", (double)sum/5); return (0); }
- ベストアンサー
- C・C++・C#
- 5つの要素を持つ配列から最高点を出力する
1,5つの要素を持つ配列を受け取り、その最大値を返すint main(int x[])関数を定義してください。max()関数を使い、キーボードから学生の数とテストの点数を入力させ、最高点を出力うするコードを記述してください。 テストの点数を入力してください。 50 49 35 68 75 最高点は75点です、 みたいな感じの例題を作るまとめの練習ですが、ちょっと頭がこんがらがってしまいました。 とりあえず私が、途中まで記述したソースです。 #include<iostream> using namespace std; int max(int x[]); int main() { int tensu[5]; for (int i = 0; 0 < 5; i++) { cout << "テストの点数を入力してください。\n"; cin >> tensu[i]; } return 0; } int max(int x[]) { } 関数を使ってそれでif判定だとは思うのですが、関数を使ってifを使う方法が解りません。 ご教示よろしくお願いします。
- ベストアンサー
- C・C++・C#
- 関数の使い方が分りません
あらかじめ人数がわかっている集団で、科目A、科目B、科目Cの点数を入力後、各々の平均を求めるプログラムを作成したいです。人数も最初に入力してもらいます。 実行例は以下の通りです 人数? 3 科目Aの成績 1人目の点数: 50 2人目の点数: 40 3人目の点数: 90 ・ ・ ・ 科目Aの平均:60.0 科目Bの平均: 科目Cの平均: この実行例から、 1、人数-ninzuを取り込む 2、main関数の前に平均を求めるためのaverage関数を書く。ninzu分の配列tensu[]を定義し、for文で点数を取り込む。平均を計算し、その値を返す。 と考えました。 main関数の中でninzuを取り込んで、関数averageに飛んでninzu分の配列-tensu[ninzu]をつくったんですが、エラーの嵐です(泣) なんか、根本的に違う気がして本で調べてみたんですが、分りませんでした。 main中で取り込んだninzuを関数の中で使う事は出来ませんか? あとmain中で printf("科目Aの成績\n");をかき、このあとに関数を呼び出せれば実行例どおりに作れると思うんですが、どうやったら関数を呼び出せますか? もう手が付けられないです…。助けてください また、「こうしたら?」みたいなアドバイスもありましたらぜひお願いします! なにぶん超初心者ですので、よろしくお願いします。
- ベストアンサー
- C・C++・C#
- C言語が分からないので分かる方説明お願いします
C言語が分からないので分かる方説明お願いします #include<stdio.h> int main(void) { int i; int tensu[5]; int sum=0; printf(”点数を入力してください。”); for(i=0;i<5;i++){ printf(”%2d番:”,i+1); scanf(”%d”,&tensu[i]); sum+=tensu[i]; } printf(”合計点:%5d¥n”,sum); printf(”平均点:%5.1f¥n”,(double)sum/5); return(0); } 実行すると 点数を入力してください。 1番:95 2番:83 3番:85 4番:63 5番:89 合計点:415 平均点:83.0 できるだけ詳しく教えてください
- 締切済み
- 情報工学
- 初心者向け配列の処理、本に載っているコードの意味が少しわかりません。
入門者向けの本に載っていたコードなんですが、1行だけ どういった処理を行っているのか理解できないところがありました。 よろしくお願いします。 /* 5人の学生の点数を読み込んで60点以上の学生の一覧を表示 */ #include <stdio.h> #define NUMBER 5 /* 人数 */ int main(void) { int i; int snum = 0; /* 合格者の人数 */ int tensu[NUMBER]; /* NUMBER人の学生の点数 */ int succs[NUMBER]; /* 合格者リスト(合格者の添字を格納) */ puts("点数を入力してください。"); for (i = 0; i < NUMBER; i++) { printf("%2d番:", i + 1); scanf("%d", &tensu[i]); if (tensu[i] >= 60) succs[snum++] = i; /*ここがどういった処理になっているのかわからないです。 */ } puts(" 合格者一覧 "); puts("------------"); for (i = 0; i < snum; i++) printf("%2d番(%3d点)\n", succs[i] + 1, tensu[succs[i]]); return (0); }
- ベストアンサー
- C・C++・C#
- C言語の問題-配列について
今、独学でC言語をやっているんですが本にのっている問題に解答がなくわかりません。 問題はbunpu[tensu[i] / 10]++;はどういう意味を表すかです。 do-while分の繰り返しがおわった後にbumpuに++があるので+1をすればいいのでしょうか?よくわかりません・・・ 学生10人の点数の分布を10点ごとに分布グラフとして表示します。 #include <stdio.h> #define NUMBER 80 int main (void) { int i,j,num; int tensu[NUMBER]; int bunpu[11] = {0}; puts("点数を入力してください"); for("i =0; i < num; i++"){ printf("%2d番",i + 1); do{ scanf("%d",&tensu[i]); if(tensu[i] < 0 || tensu[i] > 100) printf("0以上100以下"); }while (tensu[i] < 0 || tensu[i] > 100); bunpu[tensu[i] / 10]++; } puts("\n 分布ぐらふ "); printf(" 100:"); for (j = 0;j < bumpu[10];j++) putchar('*') putchar('\n') for(i = 9; i>=0; i--) { printf("%3d - %3d:",i*10,i*10+9); for (j=0; j< bunpu[i];j++) putchar('*'); putchar('\n'); } return(o); }
- ベストアンサー
- C・C++・C#
- C言語 ポインタ 関数
キーボードから文字列”abcdefg”を入力し、main関数で配列aryに格納する。 main関数から配列aryの先頭アドレスを副関数に引き渡す。 副関数で配列aryの最後尾の要素の内容を';'に変更する。 main関数で配列aryの内容を表示する。 この問題が解けません... #include <stdio.h> int main (void) { char ary[]="abcdef"; int *p; int i,x; p=&ary[0]; func(&i); for (x=0;x<=7;x++){ printf("%s",ary[x]); void func (int i) if(i==\0) i=';' else i++ } return 0 } とりあえずこんな感じなんですけど、出来ませんでした...
- 締切済み
- C・C++・C#
- 教えてください
このソースのbunpu[tensu[i] / 10]++;がよく分からないので詳しく教えてください。 あと、 printf(" 100:"); for(j=0; j < bunpu[10]; j++) putchar('*'); putchar('\n');についても何を示しているのかわかりません。そこも詳しく教えてください。宜しくお願いします。 #include <stdio.h> #define NUMBER 80 int main(void) { int i, j; int num; int tensu[NUMBER]; int bunpu[11] = {0}; printf("人数を入力してください:"); do{ scanf("%d", &num); if(num < 1 || num > NUMBER) printf("\a要 [1以上%d以下] :", NUMBER); }while (num < 1 || num > NUMBER); puts("点数を入力してください。"); for(i=0; i < num; i++) { printf("%2d番:", i+1); do{ scanf("%d", &tensu[i]); if (tensu[i] < 0 || tensu[i] > 100) printf("\a要 [0以上100以下] :"); }while (tensu[i] < 0 || tensu[i] > 100); bunpu[tensu[i] / 10]++; } puts("\n 分布グラフ "); printf(" 100:"); for(j=0; j < bunpu[10]; j++) putchar('*'); putchar('\n'); for (i=9; i >=0; i--) { printf("%3d-%3d:", i*10, i*10+9); for (j =0; j < bunpu[i]; j++) putchar('*'); putchar('\n'); } return(0); }
- ベストアンサー
- C・C++・C#