C言語による2次元配列の超基本的な扱い
yahoo知恵袋で次の質問投稿がありました。
c言語 2次元配列に関して質問です
添付した問題の点数の出力、if文での判定がうまくできません
分かる方がいましたら教えてください
質問者は大学生でしょうか。
このような少し勉強すればわかるような課題について、解答を丸ごと求めるような質問は、ふざけているようにしか思えません。
また、もしこれにまともに回答する人がいたならば、それも非常に問題があると思います。
本題ですが、この課題の解答例を以下に示します。
1#include <stdio.h>
2
3int main (void){
4 int x;
5 int sum[10];
6 int matrix[][10] = {
7 {87, 45, 77, 93, 59, 60, 41, 70, 80, 49},
8 {78, 65, 82, 97, 55, 87, 45, 65, 72, 51},
9 };
10
11 for(x=0; x<10; x++){
12 sum[x] = matrix[0][x] + matrix[1][x];
13 if (sum[x] >= 150) {
14 /* 150点以上は優秀 */
15 printf("数学%3d, 英語%3d, 合計%4d: 優秀\n", matrix[0][x], matrix[1][x], sum[x]);
16 } else if(sum[x] >= 120){
17 /* 120点以上150点未満は合格 */
18 printf("数学%3d, 英語%3d, 合計%4d: 合格\n", matrix[0][x], matrix[1][x], sum[x]);
19 } else {
20 /* 120点未満は不合格 */
21 printf("数学%3d, 英語%3d, 合計%4d: 不合格\n", matrix[0][x], matrix[1][x], sum[x]);
22 }
23 }
24 return 0;
25}