大大们看看我这段代码为什么会报错啊!!!!

走做头发 2013-01-25 10:39:44
/*程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和3门课的成绩。
函数fun的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大)排序。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!*/
#include <stdio.h>
#include <string.h>
struct student {
long sno;
char name[10];
float score[3];
};
void fun(struct student a[], int n)
{
/*__1__*/

struct student char t;
int i, j;
for (i=0; i<n-1/*__2__*/; i++)
for (j=i+1; j<n; j++)
if (strcmp(/*__3__*/a[i].name,a[j].name) > 0)
{ t = a[i]; a[i] = a[j]; a[j] = t; }
}
main()
{ struct student s[4]={{10001,"ZhangSan", 95, 80, 88},{10002,"LiSi", 85, 70, 78},
{10003,"CaoKai", 75, 60, 88}, {10004,"FangFang", 90, 82, 87}};
int i, j;
printf("\n\nThe original data :\n\n");
for (j=0; j<4; j++)
{ printf("\nNo: %ld Name: %-8s Scores: ",s[j].sno, s[j].name);
for (i=0; i<3; i++) printf("%6.2f ", s[j].score[i]);
printf("\n");
}
fun(s, 4);
printf("\n\nThe data after sorting :\n\n");
for (j=0; j<4; j++)
{ printf("\nNo: %ld Name: %-8s Scores: ",s[j].sno, s[j].name);
for (i=0; i<3; i++) printf("%6.2f ", s[j].score[i]);
printf("\n");
}
}




//C:\Users\Lee\Desktop\新建文件夹 (2)\Cpp1.cpp(17) : error C2628: 'student' followed by 'char' is illegal (did you forget a ';'?)
...全文
238 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sduxiaoxiang 2013-01-25
  • 打赏
  • 举报
回复

void fun(struct student  a[], int  n)
 {
  /*__1__*/

 struct student t; //mark
 int  i, j;
 for (i=0; i<n-1/*__2__*/; i++)
     for (j=i+1; j<n; j++)
       if (strcmp(/*__3__*/a[i].name,a[j].name) > 0)
       {  t = a[i];   a[i] = a[j];  a[j] = t;  }
 }
走做头发 2013-01-25
  • 打赏
  • 举报
回复
我用的是win 8系统 vc++6.0

64,649

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧