关于fscanf()....
#include<stdio.h>
int main()
{
FILE *input,*output;
int a,b;
input = fopen("1.in","wb");
fscanf(input,"%d%d",&a,&b);
fclose(input);
output = fopen("1.out","wb");
fprintf(output,"%d",a+b);
return 0;
}
将输入保存在1.in文件中,输出保留在1.out中,为什么这个程序就不能运行呢?编译通过,但输入不了数据 input output file c
[解决办法]
input = fopen("1.in","wb");
这里打开的模式不对:
w---打开一个空文件来编写。若文件已经存在,内容会被全部清空;若文件不在则创建。
把wb换成只读r+就可以了,因为你只是需要赌球1.in里面的东西
[解决办法]
input = fopen("1.in","wb");这句把"rb"误写为"wb"了。
[解决办法]
注意打开方式
#include<stdio.h>
int main()
{
int a,b;
FILE* in = fopen("1.in","rb"), *out = fopen("1.out","wb");
if(f && 2 == fscanf(input,"%d%d",&a,&b) && out)
{
fprintf(output,"%d",a+b);
}
fclose(in), fclose(out);
return 0;
}