try换掉, 是关键字,还有break 也不能在乱用。
路南网站建设公司成都创新互联,路南网站设计制作,有大型网站制作公司丰富经验。已为路南上千多家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的路南做网站的公司定做!
楼主应该多看看编程例题,这样写很乱,可读性比较差。如果在开始就养成良好代码写作习惯,成为一个优秀的程序员不是问题,还有记得写注释,很重要。
您好!很高兴为您解答。
出现这个error通常是因为某一个函数或者变量没有在使用之前声明。您试着把这一自定义函数写在主函数前,再编译看看~
望采纳~如问题未解决,欢迎追问~
这个问题有意义,调这程序真费劲,没注释,不知道要干什么,感觉像是要输出什么平方数,不想调了。二楼就是在胡扯,用一楼的方法写,可能写起来会简洁一些,但是易读性就不好说了。
你把问题再写得具体一些,然后等待没事做的人给你调吧,问题估计就是数组下标越界了
#includestdio.h
struct stu
{
char name[20];
int num;
double sco[2];
} ;//声明结构体,供以下代码使用
double ever(struct stu a[],int n,int x) //只能传结构体数组过来
{
int i; double avg=0;
for(i=0;in;i++)
avg+=a[i].sco[x];
avg/=n;
return avg;
}
void main(void)
{
int i;
double m,n;
struct stu student[45];
for(i=0;i45;i++)
{
gets(student[i].name);
scanf("%d,%f,%f",student[i].num,student[i].sco[0],student[i].sco[1]); //注意输入数据时,以逗号分隔
}
m=ever(student,45,0); //参数改为三个,最后一个表示是哪科
n=ever(student,45,1); //
for(i=0;i45;i++)
{
if(student[i].sco[0]m student[i].sco[1]n)
printf("%s %d\n", student[i].name, student[i].num);
}
}
哈哈,我看出来了,你是用VC编译的吧,看dos.h头文件,这是TC编译器的头文件,支持的暂停为delay()函数,如果用VC编译,那么就是用的windows环境下的32位编程,所以就应该加入windows.h这个头文件,告诉VC编译器这个名字空间,错误提示是由于你的sleep()函数中S要大写,改成大写就能编译通过了。
希望对你有所帮助。