| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 735 人关注过本帖
标题:写的程序弹出系统错误。。请高手帮忙看看什么问题。。。
只看楼主 加入收藏
rapher
Rank: 2
等 级:论坛游民
帖 子:36
专家分:10
注 册:2011-5-27
结帖率:71.43%
收藏
 问题点数:0 回复次数:5 
写的程序弹出系统错误。。请高手帮忙看看什么问题。。。
题目为输入5个学生的学号,姓名,成绩(成绩有三个),并计算出成绩的平均值,然后打印到一个“stud.txt”的文件内。

程序如下,能通过。也能正常输入学生信息。。。但是杯具的是在输入完信息时,系统弹出错误“unhandled exception in studengr.exe:0XC0000005:access violation”

#include"stdio.h"
struct data{float s1,s2,s3;};
struct student
{long num;
char name[20];
struct data score;
float p;
}stu[4];

void main()
{struct student stu[4];
float a[4];
FILE *fw;
int i,j;
printf("input the student:\n");
for(i=0;i<5;i++){
    scanf("%ld,%s,%f,%f,%f",&stu[i].num,&stu[i].name,&stu[i].score.s1,&stu[i].score.s2,&stu[i].score.s3);
    a[i]=(stu[i].score.s1+stu[i].score.s2+stu[i].score.s3)/3;
    stu[i].p=a[i];}
fw=fopen("stud.txt","w");
for(j=0;j<5;j++)fprintf(fw,"%ld,%s,%.2f,%.2f,%.2f,%.2f\n",stu[i].num,stu[i].name,stu[i].score.s1,stu[i].score.s2,stu[i].score.s3,stu[i].p);
fclose(fw);
}


最后在stdu.txt里面打印出来的:
1245076,?b
搜索更多相关主题的帖子: access 平均值 姓名 
2011-05-30 13:37
rapher
Rank: 2
等 级:论坛游民
帖 子:36
专家分:10
注 册:2011-5-27
收藏
得分:0 
在调试那里也有这种信息

Loaded 'ntdll.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\kernel32.dll', no matching symbolic information found.
First-chance exception in studengr.exe: 0xC0000005: Access Violation.
2011-05-30 13:39
rapher
Rank: 2
等 级:论坛游民
帖 子:36
专家分:10
注 册:2011-5-27
收藏
得分:0 
哦。。自己仔细排查了。。原来是赋值错鸟。。。。
附上自己的完整程序,,
#include"stdio.h"
struct data{float x,y,z;};
struct student
{long num;
char name[20];
float p;
struct data score;
}stu[4];

void main()
{L1:struct student stu[4];
float a[10];
FILE *fw;
int i,j;
printf("input the student:\n");
for(i=0;i<5;i++){
    scanf("%ld%s%f%f%f",&stu[i].num,&stu[i].name,&stu[i].score.x,&stu[i].score.y,&stu[i].score.z);
    a[i]=(stu[i].score.x+stu[i].score.y+stu[i].score.z)/3;
    stu[i].p=a[i];
    printf("%.2f\n",stu[i].p);}
fw=fopen("stud.txt","w");
for(j=0;j<5;j++)fprintf(fw,"%ld %s %f %f %f %.2f\n",stu[j].num,stu[j].name,stu[j].score.x,stu[j].score.y,stu[j].score.z,stu[j].p);
fclose(fw);
goto L1;
}
2011-05-30 14:46
风竹林子
Rank: 2
等 级:论坛游民
帖 子:10
专家分:13
注 册:2011-1-19
收藏
得分:0 
路过

0和1很单调,但0和1的有序组合却无限精彩...
2011-05-31 09:48
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
非法内存访问了...

                                         
===========深入<----------------->浅出============
2011-05-31 09:57
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
自问自答,结帖了吧。

我们都在路上。。。。。
2011-05-31 11:54
快速回复:写的程序弹出系统错误。。请高手帮忙看看什么问题。。。
数据加载中...
 
   



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

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