MyException - 我的异常网
当前位置:我的异常网» C++ » 大大们看看小弟我这段代码为什么会报错啊

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

www.MyException.Cn  网友分享于:2013-02-20  浏览:3次
大大们看看我这段代码为什么会报错啊!!!!
/*程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和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 ';'?)

------解决方案--------------------

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;  }
 }

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有