标题:想询问一个报错,但不清楚原因,基于VC++
取消只看楼主
海潮浪帆
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2020-2-5
结帖率:100%
已结贴  问题点数:20 回复次数:1 
想询问一个报错,但不清楚原因,基于VC++
#include <stdio.h>
#include <string.h>
#include <stdlib.h>//exit(0)

void sort(struct bz a[],int n,int m);

struct bz
{
   char no[6];
   char name[10];
   int cj[5];//total 也在
};

void main()
{
    FILE *fp;
    struct bz a[10000];
    int i,j,k,n,t,m,e;
    int b[10000];

    fp=fopen("fi.txt","r");
    if(fp==NULL)
    {
        printf("File open error.\n");
        exit(0);
    }

    i=0;
    while(!feof(fp))
    {
        fscanf(fp,"%s %s",a[i].no,a[i].name);//》》》》》空格???
         for(k=0,a[i].cj[5]=0;k<4;k++){    //0,1,2,3
            fscanf(fp,"%d",&a[i].cj[k]);
            a[i].cj[4]+=a[i].cj[k];         //4==总成绩
         }
    i++;
    }
    k=i;//k个人
    fclose(fp);
   
    //成绩读入完成
   
    for(j=0;j<5;j++){//01234.4是总成绩
        
        sort(a,k,j);//成绩比较,k是送入多少个人,j是哪一科
        b[j]=a[599].cj[j];//最后一个
        if(j<4){
            printf("科目%d的调档线是%d\n",j+1,b[j]);
        }else
            printf("总分分数线是:%d\n",b[j]);
    }
   

int sort(struct bz a[ ],int n,int m)//用来比较单独一科,n是人数,m是第几科 --------------报错;error C2143: syntax error : missing ';' before 'type'
{
    //struct bz b[1000];
    //int i,j;
    for(i=0;i<n-1;i++){
      for(j=i+1;j<n-2;j++)//next one
        if(a[i].cj[m]<a[j].cj[m]){
           a[n]=a[i];//用n作为临时变量
           a[i]=a[j];
              a[j]=a[n];
/*              b[i]=a[i];
              a[i]=a[j];
              a[j]=b[i];*/
              //a[i]<->a[j]
        }   
    }
}



请问是为什么呢?
搜索更多相关主题的帖子: for struct int 报错 sort 
2020-05-07 23:45
海潮浪帆
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2020-2-5
得分:0 
回复 2楼 fulltimelink
你好,能再指明一点吗?小白确实看不太懂
2020-05-08 09:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-501482-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026305 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved