/****************************/
/* 多次元配列 */
/* coded by Y.Suganuma */
/****************************/
#include <stdio.h>
int main()
{
// 人数の読み込みと配列の定義
int n, m = 0, x[50][3];
double sum1 = 0.0, sum2 = 0.0;
printf("人数は? ");
scanf("%d", &n);
if (n <= 0 || n > 50)
printf(" ***人数が多すぎます\n");
else {
// データの読み込みと点数の和の計算
int i1;
for (i1 = 0; i1 < n; i1++) {
printf("学籍番号,英語の点,数学の点は? ");
scanf("%d %d %d", &x[i1][0], &x[i1][1], &x[i1][2]);
sum1 += x[i1][1];
sum2 += x[i1][2];
}
// 平均点の計算と平均点以下の人
if (n <= 0)
printf("データが存在しません!\n");
else {
double mean1 = sum1 / n;
double mean2 = sum2 / n;
printf("英語平均 %f 数学平均 %f\n", mean1, mean2);
printf("いずれかの科目が平均点以下の人の学籍番号\n");
for (i1 = 0; i1 < n; i1++) {
if (x[i1][1] <= mean1 || x[i1][2] <= mean2) {
printf(" %d\n", x[i1][0]);
m++;
}
}
printf("該当学生数 %d 人\n", m);
}
}
return 0;
}
/****************************/
/* 多次元配列 */
/* coded by Y.Suganuma */
/****************************/
#include <stdio.h>
int main()
{
// 人数の読み込みと配列の定義
int n, m = 0;
double sum1 = 0.0, sum2 = 0.0;
printf("人数は? ");
scanf("%d", &n);
int **x = new int *[n];
for (int i1 = 0; i1 < 3; i1++)
x[i1] = new int [3];
// データの読み込みと点数の和の計算
for (int i1 = 0; i1 < n; i1++) {
printf("学籍番号,英語の点,数学の点は? ");
scanf("%d %d %d", &x[i1][0], &x[i1][1], &x[i1][2]);
sum1 += x[i1][1];
sum2 += x[i1][2];
}
// 平均点の計算と平均点以下の人
if (n <= 0)
printf("データが存在しません!\n");
else {
double mean1 = sum1 / n;
double mean2 = sum2 / n;
printf("英語平均 %f 数学平均 %f\n", mean1, mean2);
printf("いずれかの科目が平均点以下の人の学籍番号\n");
for (int i1 = 0; i1 < n; i1++) {
if (x[i1][1] <= mean1 || x[i1][2] <= mean2) {
printf(" %d\n", x[i1][0]);
m++;
}
}
printf("該当学生数 %d 人\n", m);
}
return 0;
}