先贴两个代码
#include <stdio.h>
int main(void) {
FILE *fp;
int i, k, n;
fp = fopen("data.dat", "w+");
for(i = 1; i < 6; i++) {
fprintf(fp, "% d ", i);
if(i % 3 == 0) fprintf(fp, " \n"); // 这个 \n 前面是不是有空格,真的不好说,这里就加上吧
}
rewind(fp);
fscanf(fp, "% d% d", &k, &n);
printf("% d% d \n", k, n); // 在这个字体下,看不出那是不是空格,这里也加上吧,不过貌似这个不是空格
fclose(fp);
return 0;
}
#include <stdio.h>
int main(void) {
FILE *fp;
int i, k, n;
fp = fopen("data.dat", "w+");
for(i = 1; i < 6; i++) {
fprintf(fp, "%d ", i); // 这个 d 后面是不是有空格?
if(i % 3 == 0) fprintf(fp, "\n"); // 写这本书的作者,很不负责任,这个 \ 应该是中文的, % 也是中文的
}
rewind(fp);
fscanf(fp, "%d%d", &k, &n); // 这里应该是 '%d%d',不是 '% d% d'
printf("% d% d\n", k, n);
fclose(fp);
return 0;
}
第二个代码就是这道题的答案,你运行一下第二个代码就知道答案了
还有,这种问题
你上机试一试就知道了,还要我们帮你把代码从书上抄到计算机上测试吗?
最后,再一次批评作者的不负责任,也许你可以考虑换一本书了
这种不负责任的作者写的书,不值得你看
|