|
当サイトの解答15−3解答例と自分で解いたプログラムの違いが分からず、コーディングも似ているのになぜ自分の解答だけエラーが出るのか分かりません。どなたか教えてください。
/*生徒情報を構造体として作成し、それぞれの科目の平均点を構造体のポインタを用いて求めなさい。*/
#include <stdio.h>
#define NINZU 5
#define KAMOKU 4
struct seiseki {
int bango;
int kamoku[KAMOKU];
};
int main( void )
{
struct seiseki myclass[NINZU+1]={
{ 1001, 85, 74, 63, 90 },
{ 1002, 78, 65, 70, 62 },
{ 1003, 89, 92, 88, 76 },
{ 1004, 32, 48, 66, 25 },
{ 1005, 92, 76, 81, 98 },
{ -1, 0, 0, 0, 0 }
};
char *kname[] = {"国語","数学","理科","社会"};
struct seiseki *my_p;
my_p = myclass;
double ave;
int i , j;
for ( j=0;j<KAMOKU;j++ ) {
ave = 0.0;
for ( i=0;i < (my_p+i)->bango != -1;i++) {
ave += (my_p+i)->kamoku[j];
}
ave /= KAMOKU;
printf(" %s 平均 = %6.2f\n",kname[j],ave);
}
return 0;
}
コンパイルしています...
struct01.c
\C\struct01.c(25) : error C2143: 構文エラー : ';' が '型' の前にありません。
\C\struct01.c(26) : error C2143: 構文エラー : ';' が '型' の前にありません。
\C\struct01.c(28) : error C2065: 'j' : 定義されていない識別子です。
\C\struct01.c(29) : error C2065: 'ave' : 定義されていない識別子です。
\C\struct01.c(29) : warning C4244: '=' : 'double' から 'int' に変換しました。データが失われているかもしれません。
\C\struct01.c(30) : error C2065: 'i' : 定義されていない識別子です。
C - エラー 5、警告 1
---------------------- 終了 ----------------------
ビルド : 0 正常終了、1 失敗、0 スキップ
|