早教吧作业答案频道 -->其他-->
究竟错在哪了?#includemain(){\x05FILE*p,*q;\x05inti,c[10]={1,2,3,4,5,6,7,8,9,10};\x05p=fopen("1.c","wb");\x05for(i=0;i=0)\x05{\x05\x05fputc(fgetc(p),q);\x05\x05fseek(p,-2,1);\x05}fclose(p);fclose(q);q=fopen("2.c","rb");\x05rewind(q);\x05for(i=
题目详情
究竟错在哪了?
#include
main()
{
\x05FILE *p,*q;
\x05int i,c[10]={1,2,3,4,5,6,7,8,9,10};
\x05p=fopen("1.c","wb");
\x05for(i=0;i=0)
\x05{
\x05\x05fputc(fgetc(p),q);
\x05\x05fseek(p,-2,1);
\x05}
fclose(p);
fclose(q);
q=fopen("2.c","rb");
\x05rewind(q);
\x05for(i=0;i
#include
main()
{
\x05FILE *p,*q;
\x05int i,c[10]={1,2,3,4,5,6,7,8,9,10};
\x05p=fopen("1.c","wb");
\x05for(i=0;i=0)
\x05{
\x05\x05fputc(fgetc(p),q);
\x05\x05fseek(p,-2,1);
\x05}
fclose(p);
fclose(q);
q=fopen("2.c","rb");
\x05rewind(q);
\x05for(i=0;i
▼优质解答
答案和解析
问题出在
q=fopen("2.c","wb");
fseek(p,0,2);
fseek(p,-1,1);
while(ftell(p)>=0)
这几句.
fseek会把文件结束符清除掉,请看linux man page里面的一句话:
A successful call to the fseek() function clears the end-of-file indicator for
the stream and undoes any effects of the ungetc(3) function on the same stream.
所以你的while会无限循环了.
q=fopen("2.c","wb");
fseek(p,0,2);
fseek(p,-1,1);
while(ftell(p)>=0)
这几句.
fseek会把文件结束符清除掉,请看linux man page里面的一句话:
A successful call to the fseek() function clears the end-of-file indicator for
the stream and undoes any effects of the ungetc(3) function on the same stream.
所以你的while会无限循环了.
看了 究竟错在哪了?#includ...的网友还看了以下:
食堂买回7/8吨面粉,第一周吃了它的1/4,第二周又吃了1/8吨,两周共吃了多少吨?第一次吃了1/ 2020-04-25 …
(1)甲乙一共有172元钱,甲花去了她的钱的4/9,乙花去了32元,现在甲乙钱数一样多,甲乙原来各 2020-04-26 …
一只猴子偷吃桃树上的桃子,第一次吃了1/30,以后的28天里,分别吃了1/28,1/27,1/26 2020-05-13 …
小丽买了3块橡皮和4把尺子,共花了13.14元,小东买了1块橡皮和1把尺子,共花了3.68元。一小 2020-05-13 …
时钟1时敲1下,2时敲2下,3时敲3下,同时每个半整点时刻敲一下.小华听见钟敲了1下,过了一段时间 2020-05-20 …
奶奶买苹果奶奶买了一些苹果,第一天吃了1/3又1/3个,第二天吃了剩下的1/4有1/4个,第三天吃 2020-05-24 …
某人墓碑刻着:他生命的1/6是幸福的童年,再活了他生命的1/12,两颊长起了胡须,又过了1/7,他 2020-06-22 …
(1/2)小明向甲借50,向乙借50,买了双皮鞋用了97.剩下3元,还甲1块,还乙1块,自己剩下了 2020-06-30 …
向爸爸借了50元,又向妈妈借了50元,买了一双鞋花了47元,还给爸爸1元,还给妈妈1元,自向爸爸借 2020-07-10 …
已知有一箱饼干A肚子饿吃了1/8离开了B来了吃了剩下的1/6离开了C来了吃了剩下的1/7离开了D来了 2020-11-16 …