|
|
heroine
鐵驢友〔中級〕
. 積分: 51
. 文章: 68
. 收花: 248 支
. 送花: 67 支
. 比例: 0.27
. 在線: 1625 小時
. 瀏覽: 23375 頁
. 註冊: 6986 天
. 失蹤: 308 天
. 地心 |
|
|
|
|
|
|
#1 : 2006-10-22 03:20 PM
全部回覆
|
送花
(0)
送出中...
|
|
|
我程式行都沒錯 不過最後輸入的地方有問題...
http://tw.knowledge.yahoo.com/question/?qid=1206102206679
#include<iostream>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
struct
{
int hw;
int mid;
int term;
int sum;
char name[10];
float average;
}student[4],temp;
void file_error(void)
{
printf("****load file error****\n");
exit(1);
}
int main(void)
{
FILE *fp1,*fp2;
char ip;
int i=0;
do
{
system("cls");
fp1=fopen("score.txt","r");
fp2=fopen("avg.txt","w");
if(fp1==NULL)
{
file_error();
}
while(fscanf(fp1,"%s%d%d%d",&student.name,&student.hw,&student.mid,&student.term) !=EOF)
{
i++;
}
printf("\name hw mid term\n");
printf("===========================================\n");
for(i=0;i<10;i++)
{
student.sum=student.hw+student.mid+student.term;
student.average=(float)student.sum/3;
printf("%s\t%d\t%d\t%d\t%d\t%f\n",student.name,student.hw,student.mid,student.term,student.sum,student.average);
fprintf(fp2,"%-10s %d %d %d %d %f\n",student.name,student.hw,student.mid,student.term,student.sum,student.average);
printf("\n");
}
fclose(fp1);
fclose(fp2);
printf("restart?(y/n)\n");
ip=getch();
}
while(ip=='y');
exit(1);
return 0;
}
如果輸入y以外的東西 會發生記憶體xxxx的問題....
想請問一下要怎麼改正勒?
[heroine 在 2006-10-22 04:50 PM 作了最後編輯]
[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
|
|