c语言文件名错误的是,C语言程序错误,不能正常读写文件,求解啊
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#define LEN sizeof(struct student)
#include
#include
#include
struct student
{
int num;
char name[20];
int score[3];
int aver;
}; void personal_information_input(FILE *fp)
{
struct student *p;
int a,i,n;
printf("请输入将要输入的学生个数: ");
scanf("%d",&n);
printf("请输入学生的学号姓名和三科成绩:\n");
for(i=0;i
{
a=i+1;
printf("%d:",a);
p=(struct student *)malloc(LEN);
scanf("%d%s%d%d%d",&p->num,&p->name,&p->score[0],&p->score[1],&p->score[2]);
fwrite(p,LEN,1,fp);
p++;
}
} void personal_information_print(FILE *fp)
{
struct student *p,*p1;
int i=0;
p=(struct student *)malloc(LEN);
printf("请输入需要查找的学生的学号: ");
scanf("%d",&p->num);
p1=(struct student *)malloc(LEN);
fread(p1,LEN,1,fp);
while(!feof(fp))
{
fread(p1,LEN,1,fp);
if(p1->num==p->num)
printf("学号:%d 姓名:%s 成绩:%d %d %d 平均成绩:%d\n",
p->num,p->name,p->score[0],p->score[1],p->score[2],p->aver);
p1++;
fread(p1,LEN,1,fp);
}
} void average(FILE *fp)
{
struct student *p1;
p1=(struct student *)malloc(LEN);
fread(p1,LEN,1,fp);
while(!feof(fp))
{
p1->aver=(p1->score[0]+p1->score[1]+p1->score[2])/3.0;
fwrite(p1,LEN,1,fp);
p1++;
// p1=(struct student *)malloc(LEN);
fread(p1,LEN,1,fp);
}
}
void score_output(FILE *fp)
{
struct student *p1;
p1=(struct student *)malloc(LEN);
fread(p1,LEN,1,fp);
while(!feof(fp))
{
printf("学号:%d 姓名:%s 成绩:%d %d %d 平均成绩:%d\n",
p1->num,p1->name,p1->score[0],p1->score[1],p1->score[2],p1->aver);
// p1=(struct student *)malloc(LEN);
p1++;
fread(p1,LEN,1,fp);
}
}
void score_search(FILE *fp)
{
struct student *p,*p1;
p=(struct student *)malloc(LEN);
printf("输入要查找的学生成绩: ");
scanf("%d",&p->score[0]);
p1=(struct student *)malloc(LEN);
fread(p1,LEN,1,fp);
while(!feof(fp))
{
if(p1->score[0]==p->score[0])
printf("学号:%d 姓名:%s 成绩:%d %d %d 平均成绩:%d\n",
p1->num,p1->name,p1->score[0],p1->score[1],p1->score[2],p1->aver);
else if(p1->score[1]==p->score[0])
printf("学号:%d 姓名:%s 成绩:%d %d %d 平均成绩:%d\n",
p1->num,p1->name,p1->score[0],p1->score[1],p1->score[2],p1->aver);
else if(p1->score[2]==p->score[0])
printf("学号:%d 姓名:%s 成绩:%d %dd %d 平均成绩:%d\n",
p1->num,p1->name,p1->score[0],p1->score[1],p1->score[2],p1->aver);
p1=(struct student *)malloc(LEN);
fread(p1,LEN,1,fp);
p1++;
}
} void main()
{
char ch;
FILE *fp;
char filename[20];
printf("请输入所用的文件名:");
scanf("%s",filename);
if((fp=fopen(filename,"ab+"))==NULL)
{
printf("无法打开此文件!\n");
exit(0);
}
else
{ fp=fopen(filename,"wb+"); }
ch=getchar();
while(1)
{
printf("\n******************欢迎使用学生信息管理系统********************\n");
printf("\n******************** 1. 个人信息的录入 ********************\n");
printf("\n******************** 2. 个人信息的输出 ********************\n");
printf("\n******************** 3. 计算平均成绩 ********************\n");
printf("\n******************** 4. 成绩的查询 ********************\n");
printf("\n******************** 5. 成绩的输出 ********************\n");
printf("\n******************** 6. 退出程序 ********************\n");
printf("\n************ 请选择上述选项执行相应的操作 ************\n");
printf("************** 你选择执行的选项是: ");
ch=getchar();
switch (ch)
{
case '1':personal_information_input(fp);break;
case '2':personal_information_print(fp);break;
case '3':average(fp);break;
case '4':score_search(fp);break;
case '5':score_output(fp);break;
case '6':exit(0);
default: break;
}
getchar();
}
}
c语言文件名错误的是,C语言程序错误,不能正常读写文件,求解啊相关推荐
- c语言fputc输入字符串,C语言fgetc和fputc函数用法详解(以字符形式读写文件)
C语言fgetc和fputc函数用法详解(以字符形式读写文件),文件,字符,指针,函数,字节 C语言fgetc和fputc函数用法详解(以字符形式读写文件) 易采站长站,站长之家为您整理了C语言fge ...
- c语言中应用程序错误,应用程序错误0xc0000022 浅析win10应用程序错误0xc0000022的应对办法...
今天小编给大家浅析win10应用程序错误0xc0000022的应对办法,其实出现应用程序错误0xc0000022是因为win10缺少了系统所需要的某种组件功能的原因,遇到此问题的用户,可参照以下的方法 ...
- c语言fseek128字节,C语言rewind和fseek函数的用法详解(随机读写文件)
前面介绍的文件读写函数都是顺序读写,即读写文件只能从头开始,依次读写各个数据.但在实际开发中经常需要读写文件的中间部分,要解决这个问题,就得先移动文件内部的位置指针,再进行读写.这种读写方式称为随机读 ...
- C语言rewind函数返回值为空,C语言rewind和fseek函数的用法详解(随机读写文件)...
前面介绍的文件读写函数都是顺序读写,即读写文件只能从头开始,依次读写各个数据.但在实际开发中经常需要读写文件的中间部分,要解决这个问题,就得先移动文件内部的位置指针,再进行读写.这种读写方式称为随机读 ...
- python rewind_C语言rewind和fseek函数的用法详解(随机读写文件)
前面介绍的文件读写函数都是顺序读写,即读写文件只能从头开始,依次读写各个数据.但在实际开发中经常需要读写文件的中间部分,要解决这个问题,就得先移动文件内部的位置指针,再进行读写.这种读写方式称为随机读 ...
- java关于资源的描述错误的是_在Java中,下列关于读写文件的描述错误的是
摘要: 新方主要的创法是,下列指2技术纪6今的现代阶段是代至0年创新方法发展0世.读写的描本环过程节是的基思维.制让觉控当视动觉位于时控制,文件误技能动作处于说明.... 新方主要的创法是,下列指2技 ...
- traybox错误怎么办_safeboxtray.exe---应用程序错误是怎么回事?
出现这个现象有方面的,一是硬件,即内存方面有问题,二是软件,这就有多方面的问题了. 一:先说说硬件: 一般来说,电脑硬件是很不容易坏的.内存出现问题的可能性并不大(除非你的内存真的是杂牌的一塌徒地), ...
- 电脑关机显示应用程序无法正常启动(0Xc0000142)错误,taskist.exe应用程序错误
之前电脑每一次关机都显示应用程序无法正常启动(0Xc0000142)错误,试了很多种方法,差点要重装系统了,但是太麻烦,卸载了电脑上一个叫星速的软件,这个问题就好了,如果你电脑也有这个问题,看看有没有 ...
- c语言程序中的错误可分为,C语言程序常见错误与调试方法(1)
<C语言程序常见错误与调试方法(1)>由会员分享,可在线阅读,更多相关<C语言程序常见错误与调试方法(1)(17页珍藏版)>请在人人文库网上搜索. 1.C语言程序常见错误与调试 ...
- ‘svchost.exe-应用程序错误 0xc0000409’客户端无法登陆终端服务器之解决方法
'svchost.exe-应用程序错误 0xc0000409'客户端无法登陆终端服务器之解决方法! 昨天上午10点左右,公司突然停电,同事们都在不断的抱怨自己的文档没有保存.在此提醒大家编辑文档的时候 ...
最新文章
- Gym 101845(2018 ACM-ICPC, Universidad Nacional de Colombia Programming Contest)
- Java开发面试问题,牛逼轰轰!
- Docker快速安装与快速入门
- 测试计划(GB8567——88)
- jmap, jhat, jvisualvm:java堆内存对象分析利器
- MySQL官方备份_Mysqlbackup 备份详解(mysql官方备份工具)
- Jmeter文章索引贴
- 电子称测试软件,GS/AJ系列电子秤测量自动记录系统
- HTML+CSS简易淘宝页面
- 3D数学基础(二)| 向量
- 华为OJ 扑克牌大小
- 显示器尺寸对照表_电脑液晶屏尺寸如何计算,液晶屏尺寸对照表
- 大学生计算机竞赛试题,大学生计算机基础知识竞赛题库_大学生计算机基础知识竞赛试题附答案.docx...
- linux执行脚本中方法,Linux中执行shell脚本命令的4种方法总结
- Sexagenary Cycle(干支纪年)
- 机器学习因子:在线性因子模型中捕捉非线性
- VR系列--VR介绍
- 做好公司各部门数据报表支撑的几个简单思维
- IT外包公司的运作模式如何,他们的赚钱之道何在
- 2022年计算机考研408考点清单(1.0版本已更完——欢迎指正)
热门文章
- N皇后问题——DFS+回溯剪枝
- word 代码块_Python+Excel+Word一秒制作百份合同
- python程序设计第二版课后答案江红_Python核心编程第二版 第十三章课后答案
- python贴吧顶贴_python模拟登录百度贴吧
- 计算机重新如何连接网络打印机,电脑怎样连接打印机,小编教你电脑如何连接网络打印机...
- android 编译api,Android逆向利器,直接将apk转换为可二次开发Android工程,提供So hook Api,......
- 产生1000w不重复的数字
- VTK(一)---VTK简单示例
- OpenCV(二)---朴素贝叶斯分类器 NormalBayesClassifier
- 超轻薄笔记本电脑软件测试,一口气测了三款轻薄本 这三个核心问题有答案了...