CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

又出问题了!!!!

楼主kyoyeah(changzi)2005-07-01 00:40:10 在 C/C++ / C语言 提问

#include   <stdio.h>  
  #define   N   10  
  struct   student  
  {char   num[10];  
    char   name[8];  
    int   score[2];  
    float   ave[10];  
  }st[N],temp;  
  main()  
  {  
    FILE   *fp;  
    int   i,j,n;  
    if((fp=fopen("student","r"))==NULL)  
        {printf("Can   not   open   the   file.");  
        exit(0);  
   
        }  
    printf("\nfile'student':");  
    for(i=0;i<10;i++)  
    {fscanf(fp,"%s,%s",&st[i].num,&st[i].name);  
  for(j=0;j<2;j++)  
  fscanf(fp,"%8d",st[i].score[j]);  
  fscanf(fp,"%10.2f",st[i].ave);  
  }  
  fclose(fp);  
  n=i;  
  for(i=0;1<n;i++)  
  for(j=i+1;j<n;j++)  
    if(st[i].ave<st[j].ave)  
    {temp=st[i];  
      st[i]=st[j];  
      st[j]=temp;  
    }  
    printf("\nnow:");  
  fp=fopen("score","w");  
  for(i=0;i<n;i++)  
  {fwrite(&st[i],sizeof(struct   student),1,fp);  
  printf("\n%8s%8",st[i].num,st[i].name);  
  for(j=0;j<2;j++)  
  printf("%8d",st[i].score[j]);  
  printf("%10.2f",st[i].ave);  
  }}  
  程序运行后没有结果? 问题点数:50、回复次数:3Top

1 楼songsong33(天堂里的蚊子)回复于 2005-07-01 00:44:06 得分 0

markTop

2 楼foochow(无聊,灌水......)回复于 2005-07-01 00:47:56 得分 0

什么东东啊~连个注释都没:-)Top

3 楼gogdo(草草)回复于 2005-07-01 01:39:09 得分 0

#include   <stdio.h>  
  #include   <stdlib.h>  
  #define   N   10  
   
  struct   student  
  {  
  char   num[10];  
  char   name[8];  
    int   score[2];  
  float   ave[10];  
  }st[N],temp;  
   
   
  void   main()  
  {  
  FILE   *fp;  
  int   i,j,n;  
  if((fp=fopen("student","r"))==NULL)  
  {  
  printf("Can   not   open   the   file.");  
  exit(0);  
  }  
  printf("\nfile'student':");  
  for(i=0;i<10;i++)  
  {  
  fscanf(fp,"%s,%s",&st[i].num,&st[i].name);  
  for(j=0;j<2;j++)  
  fscanf(fp,"%8d",st[i].score[j]);  
  fscanf(fp,"%10.2f",st[i].ave);  
  }  
  fclose(fp);  
  n=i;  
  for(i=0;1<n;i++)  
  for(j=i+1;j<n;j++)  
  if(st[i].ave<st[j].ave)  
    {  
  temp=st[i];  
  st[i]=st[j];  
  st[j]=temp;  
    }  
  printf("\nnow:");  
  fp=fopen("score","w");  
  for(i=0;i<n;i++)  
  {  
  fwrite(&st[i],sizeof(struct   student),1,fp);  
  printf("\n%8s%8",st[i].num,st[i].name);  
  for(j=0;j<2;j++)  
  printf("%8d",st[i].score[j]);  
  printf("%10.2f",st[i].ave);  
  }  
  }  
   
  我的VC6.0下能运行的啊!  
  可能是你没有包含#include   <stdlib.h>库文件.  
   
  Top

相关问题

  • 又问。。。
  • 又来
  • 又100
  • 又倒
  • 又急。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
  • 又长又粗的烦恼
  • 又爱又恨的pdf!
  • 又一个iframe
  • 又有一错!
  • 又生蛋了!

关键词

  • student
  • fp
  • printf
  • char

得分解答快速导航

  • 帖主:kyoyeah

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo