C语言数组问题求助
我设置了两个数组一个是int型一个是char型现在我想根据int数组里的数据来给char数组赋值,但是只有第一个赋值成功了
我有点不明白哪里有问题,代码如下:
#include <stdio.h>
#include <string.h>
int main()
{
FILE*fp1,*fp2;
int s;
char a;
int n,i,j;
if ((fp1=fopen("GRADE.DAT.txt","r"))==NULL)
{
printf("File open error!\n");
return 0;
}
for(n=0;n<10;n++)
{
fscanf(fp1,"%d",&s);
}
fclose(fp1);
for(n=0;n<10;n++)
{
if(s>=90 && s<=100)
{
a='A';
break;
}
if(s>=80 && s<=89)
{
a='B';
break;
}
if(s>=70 && s<=79)
{
a='C';
break;
}
if(s>=60 && s<=69)
{
a='D';
break;
}
if(s<60)
{
a='E';
break;
}
}
if ((fp2=fopen("GRADE.OUT.txt","w"))==NULL)
{
printf("File open error!\n");
return 0;
}
fprintf(fp2,"Numberical Grade\n");
fprintf(fp2,"Score \n");
for(j=0;j<10;j++)
{
fprintf(fp2,"%d %c\n",s,a);
}
fclose(fp2);
}
{
a='A';
break;
}
if(s>=80 && s<=89)
{
a='B';
break;
}
if(s>=70 && s<=79)
{
a='C';
break;
}
if(s>=60 && s<=69)
{
a='D';
break;
}
if(s<60)
{
a='E';
break;
}
}
if ((fp2=fopen("GRADE.OUT.txt","w"))==NULL)
{
printf("File open error!\n");
return 0;
}
fprintf(fp2,"Numberical Grade\n");
fprintf(fp2,"Score \n");
for(j=0;j<10;j++)
{
fprintf(fp2,"%d %c\n",s,a);
}
fclose(fp2);
}
循环里面应该是 s 和 a
而且不要break
页:
[1]