実行例のように学籍番号と数学・英語・理科の点数をそれぞれ int 型のメンバとして保持する構造体 scoreを定義し、学籍番号および合計点と平均点を計算し表示する関数void print_total_average(struct score *)を作成して動作を確認するプログラムを作成したいですが、main内で可変長オブジェクトが初期化されていないというエラーが出ます。どうしたらよいでしょうか?
実行例
student[61500001] total : 217, average : 72.333336
student[61500002] total : 244, average : 81.333336
student[61500003] total : 229, average : 76.333336
#include <stdio.h> #include <math.h> struct score{ int student_num; int math; int english; int science; }; void print_total_average(struct score *sp){ int total; /* 五教科の合計 */ double avg; /* 五教科の平均 */ /* 五教科の合計の計算 */ total = sp->math + sp->english + sp->science; /* 平均の計算 */ avg = (double)total / 3.0; } int main() { int STUDENT_NUM = 3; int i; struct score list[STUDENT_NUM] = { { 61500001, 90, 72, 55 }, { 61500002, 82, 77, 85 }, { 61500003, 65, 91, 73 }, }; for (i = 0;i < STUDENT_NUM;i++) { print_total_average(&(list[i])); } return 0; }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。