#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <ctype.h>
typedef struct
{
char FamilyName[32];
char FirstName[32];
int Score[5];
}Student;
int main(void)
{
int sum[5];
double ave[5];
int i=0, m=0;
Student data[2] = {
{ "nobi", "nobita", { 25, 10, 40, 0, 15 } },
{ "minamoto", "shizuka", { 75, 60, 85, 90, 70 } },
};
for( i = 0; i < 5; i++ )
{
sum[i] = data[0].Score[i] + data[1].Score[i];
}
ave[0] = sum[0]/2;
ave[1] = sum[1]/2;
ave[2] = sum[2]/2;
ave[3] = sum[3]/2;
ave[4] = sum[4]/2;
printf("平均点: %2.2f %2.2f %2.2f %2.2f %2.2f\n",ave[0], ave[1], ave[2], ave[3], ave[4]);
}
上記は2人の生徒の平均点を求めるプログラムです。
もし2人でなくもっと多くの人数がいる場合は、
for( i = 0; i < 5; i++ )
{
sum[i] = data[0].Score[i] + data[1].Score[i];
}
の部分をdata[m]としてどうすればよいのでしょうか?
下記で試したところ変な数ができてしまいます、、
for( i = 0; i < 5; i++ )
{
for( m = 0; m < 50; m++ ) //50人設定
{
sum[i] += data[m].Score[i];
}
}
No.2
- 回答日時:
data構造体の宣言時は配列50とってるか?
データの初期値設定時、カンマや中カッコの抜けがないか等は大丈夫ですか?
とってます、、
for( i = 0; i < 5; i++ )
{
for( m = 0; m < 2; m++ )
{
sum[i] += data[m].Score[i];
}
}
これを代わりに2人の場合のプログラムに入れるとやはり変な数が出てきます。↓
平均点: -1020503177.00 34.00 3211202.00 993703875.00 2100578.00
No.4
- 回答日時:
for( i = 0; i < 5; i++ )
{
sum[i] = 0;
for( m = 0; m < 50; m++ ) //50人設定
{
sum[i] += data[m].Score[i];
}
}
でもいい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# プログラミングを教えて欲しいです。 配列aは、int a[9]={7,6,12,8,3,5,10,9 4 2022/12/19 23:27
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# (C言語・配列)date[i]の分散を計算する場合 2 2022/07/24 15:06
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- C言語・C++・C# プログラミング実行後の表示される値を答えよ #include<stdio.h> void main( 7 2022/05/20 00:07
- C言語・C++・C# プログラミング実行後に表示される値を答えよ #include <stdio.h> void main 4 2022/05/28 10:20
- C言語・C++・C# 10個の実数に対する降順ソート結果を出力するプログラムを作りたいのですが、以下のプログラムをどう直せ 1 2022/07/09 22:16
- C言語・C++・C# C言語階乗の総和を求める 2 2023/03/04 23:31
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
int型(2バイト)データの分割
-
エクセルVBA:日付データの変換...
-
c言語 Bitについて
-
linuxのシェルでファイル名に先...
-
printfの%eで指数部分の桁数を...
-
C#でのswitch文
-
テキストファイルの結合について
-
POSTで配列のデータを渡す方法は?
-
PINVOKEで構造体配列をマーシャ...
-
C言語 ファイル内のデータと入...
-
【Excel VBA】10進数を2進数に...
-
パイソン、データーサイエンス...
-
H8/36064を使ったシリアル通信...
-
UTF-8で5~6バイトになる文字コ...
-
Excel VBA メール作成について ...
-
10Mバイトて文字数に すると何...
-
char str[256]の256の意味は?
-
バイト列とバイナリ列の違いが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
stable diffusionのエラー
-
ポインター引数の関数でコンパ...
-
printfの%eで指数部分の桁数を...
-
パイソン、データーサイエンス...
-
エクセルVBA:日付データの変換...
-
C#でのswitch文
-
int型(2バイト)データの分割
-
CreateProcessでの環境変数の設...
-
【Excel VBA】10進数を2進数に...
-
python 気象データの取得
-
テキストファイルの結合について
-
RegQueryValueExでの2バイト文字
-
linuxのシェルでファイル名に先...
-
'dataType' 引数を Null にする...
-
C言語についてです! 同じ年の...
-
オセロゲーム 2次元配列で困...
-
PINVOKEで構造体配列をマーシャ...
-
matlabのソースコードをpython...
-
C言語の勉強しています。すみま...
-
System.Collections.ArrayList ...
おすすめ情報