简单c语言,如下
发布网友
发布时间:2022-12-25 14:01
我来回答
共5个回答
热心网友
时间:2023-10-12 16:34
这道题目并没有输出,是写在了test.txt.文件中
而在文件中的结果是答案D
这个程序还有问题,缺少头文件<string.h>
#include<stdio.h>
void fun(char *fname, char *st){ FILE *myf; int i; myf=fopen(fname, "w");//这个地方的w表示每次打开都会覆盖之前的文件,如果存在 for(i=0; i<strlen(st); i++) fputc(st[i], myf);//通过循环一个个写入文件 fclose(myf);}
main(){ fun("test.txt", "new world");//第一次的写入的被第二次的写入覆盖掉 fun("test.txt", "hello,");}
所以最后的结果是hello,
答案D
希望能够帮助你!
热心网友
时间:2023-10-12 16:34
答案是A
函数fun中 myf=fopen(fname, "w");以写的方式打开文件
for(i=0; i<strlen(st); i++) fputc(st[i], myf);
fputc,将st[i],写入当前指针所指位置,即myf所指位置
因此
fun("test.txt", "new world"); fun("test.txt", "hello,");
输出new worldhello追问我也觉得是A
可是答案是D
热心网友
时间:2023-10-12 16:35
答案是B
文件以"w"方式打开,第二次会覆盖掉第一次的内容!
热心网友
时间:2023-10-12 16:35
答案是D
因为你打开的方式是“W”,这种方式每次打开文件时都将文件中的内容擦出然后在重新写入新的,你如果不想擦出的话应该使用“W+”,这种追加写的方式追问使用“w+”写入后,再用“r”读的话,是从文件头读起吗?还是需要rewind后,才能从文件头读?
追答只要不close文件,心打开的就是从头读的
热心网友
时间:2023-10-12 16:36
答案是D因为你打开的方式是“W”,这种方式每次打开文件时都将文件中的内容擦出然后在重新写入新的,你如果不想擦出的话应该使用“W+”