| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 439 人关注过本帖
标题:求高手看看这段程序,为何编译不了。
只看楼主 加入收藏
b102554
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-9-28
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
求高手看看这段程序,为何编译不了。
#include "stdio.h"
struct John
{int num;
 char name[20];
double co1,co2,co;
}

main()
{typedef struct John AA;
    AA data[100],t;
 char k,kk;
 int i,j,n,m;
 FILE *fp;

 printf("输入学生人数:\n");
 scanf("%d",&n);
 for(i=0;i<n;i+=1)
 {printf("输入学生%d信息:\n",i+1);
  printf("学号:");
  scanf("%d",&data[i].num);
  getchar();
  printf("姓名:");
  gets(data[i].name);
  printf("平时成绩:");
  scanf("%f",&data[i].co1);
  getchar();
  printf("考试成绩:");
  scanf("%f",&data[i].co2);
  getchar();
  data[i].co=data[i].co2*(7.0/10.0)+data[i].co1*(3.0/10.0);
 }
 fp=fopen("myfile.txt","w");
 fprintf(fp,"学生信息如下:\n");
 fclose(fp);
 fp=fopen("myfile.txt","a");
 for(i=0;i<n;i+=1)
 {fprintf(fp,"学号:");
  fprintf(fp,"%d\n",data[i].num);
  fprintf(fp,"姓名:");
  fprintf(fp,"%s\n",data[i].name);
  fprintf(fp,"平时成绩:");
  fprintf(fp,"%.2f\n",data[i].co1);
  fprintf(fp,"考试成绩:");
  fprintf(fp,"%.2f\n",data[i].co2);
  fprintf(fp,"总成绩:");
  fprintf(fp,"%.2f\n\n",data[i].co);
 }
 fclose(fp);
 for(i=0;i<n-1;i+=1)
  for(j=i+1;j<n;j+=1)
  if(data[i].co<data[j].co)
  {t=data[i];
   data[i]=data[j];
   data[j]=t;
  }
 printf("按降序排列后成绩:\n");
 for(i=0;i<n;i+=1)
 {printf("学号:%d\n",data[i].num);
  printf("姓名:%s\n",data[i].name);
  printf("平时成绩:%.2f\n",data[i].co1);
  printf("考试成绩:%.2f\n",data[i].co2);
  printf("总成绩:%.2f\n\n",data[i].co);
 }
 printf("是否修改学生成绩(Y/N):");
 k=getchar();kk=k;
 while(k=='Y')
 {printf("输入要修改学生的学号:\n");
  scanf("%d",&m);
  for(i=0;i<n;i+=1)
  if(data[i].num==m)
  break;
  printf("输入1:修改平时成绩\n");
  printf("输入2:修改考试成绩\n");
  scanf("%d",&m);
  printf("输入新的成绩:");
  if(m==1)
  scanf("%f",&data[i].co1);
  else if(m==2)
  scanf("%f",&data[i].co2);
  else
  printf("\n输入错误!!!");
  data[i].co=data[i].co1*(3.0/10.0)+
             data[i].co2*(7.0/10.0);
  getchar();
  printf("是否继续修改(Y/N):");
  k=getchar();
 }
 if(kk=='Y')
 printf("修改后成绩:\n");
 for(i=0;i<n;i+=1)
 {printf("学号:%d\n",data[i].num);
  printf("姓名:%s\n",data[i].name);
  printf("平时成绩:%.2f\n",data[i].co1);
  printf("考试成绩:%.2f\n",data[i].co2);
  printf("总成绩:%.2f\n\n",data[i].co);
 }
}
一个简单的成绩管理系统,为何总是编译不了!C:\Windows\System32\Cpp1.cpp(97) : warning C4508: 'main' : function should return a value; 'void' return type assumed
!!!求高手解答。。。
搜索更多相关主题的帖子: include 考试成绩 double 
2012-09-28 11:15
b102554
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-9-28
收藏
得分:0 
没人么
2012-09-28 11:19
爱闹的娃
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:265
专家分:975
注 册:2011-10-23
收藏
得分:7 
仔细看看结构体的定义。。。话括弧外少了分号(;)....出现警告(warning),因为mian()函数默认返回 int 型....写个return 0;或者将main函数的返回值定义为void型........要学会看编译给你的信息...........加油!!!
2012-09-28 11:42
w995612220
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:139
专家分:313
注 册:2012-6-20
收藏
得分:7 
三楼正解
2012-09-28 15:04
hehongwei152
Rank: 2
来 自:珠海
等 级:论坛游民
帖 子:15
专家分:31
注 册:2012-9-28
收藏
得分:7 
数据类型和输入类型不一致

return 0;
2012-09-28 23:02
快速回复:求高手看看这段程序,为何编译不了。
数据加载中...
 
   



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

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