这题涉及2个要点:
一、数据存储方式:正常编程,这种复合数据结构要定义结构体。如没学,用数组代替。学号,课目名称,三课成绩分别定义变量及数组。
二、平均分浮点数运算:如成绩定义整型,求和后,不能直接除3,在c语言中除号是整除符号,需要先转浮点数再除,否则两边都是整数,结果只保留整数。
下面用数组方法写:
#include <stdio.h>
int main()
{
char sid[10],cName[3][10]={"高数","英语","c语言"};
int i,scores[3],sum=0;
float avg;
printf("请输入学号:"),scanf("%s",sid);
for(i=0,printf("请输入3门成绩:\n");i<3;i++) printf("%s:",cName[i]),scanf("%d",&scores[i]),sum+=scores[i];
avg=sum*1.0/3;
printf("\n3门课平均分为%.2f\n",avg);
return 0;
}