第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

就只能反寫一半(單數(shù)返回一半加一)的字符呢?

就只能反寫一半(單數(shù)返回一半加一)的字符呢?

C
慕斯709654 2023-03-06 17:13:29
/*以下程序的功能是:實(shí)現(xiàn)從鍵盤輸入字符,存入文件d:\\fseekin.txt,并將其反寫到d:\\fseekout.txt*/#include<stdio.h>#include<string.h>int main(int argc,char * argv[]){FILE * fpin,* fpout;int i=0;int j=0;char ch;if((fpin=fopen("d:\\fseekin.txt","w+"))==NULL)//*注意!不能寫成"w",因?yàn)楹竺孢€要讀!{printf("打開文件\"d:\\fseekin.txt\"時出錯!\n");getchar();return 0;}if((fpout=fopen("d:\\fseekout.txt","w+"))==NULL){printf("打開文件\"d:\\fseekout.txt\"時出錯!\n");getchar();return 0;}printf("請輸入一組字符串并以#號結(jié)束:\n");//*下面while語句的功能實(shí)現(xiàn)從顯示器接受字符,輸入到文件d:\\fseekin.txt中while((ch=fgetc(stdin))!='#'){fprintf(fpin,"%c",ch);i++; //*記住輸入文件的字符數(shù)}  fprintf(stdout,"剛才輸入的%d個字符使\"d:\\fseekin.txt\"的文件指針向前移動了%d個字節(jié)\n",i,ftell(fpin));j=ftell(fpin);printf("fpin中指針偏移%d個字節(jié)\n",j);i=1;/*重新初始化i,為下面的循環(huán)做準(zhǔn)備//*下面while 語句的功能實(shí)現(xiàn)將d:\\fseekin.txt的所有字符反寫到d:\\fseekout.txtwhile(ftell(fpin)!=0&&ftell(fpin)!=-1&&i<=j)//* 為什么不能用for(i=1;i<=j;i++)?好 像用了之后就只能倒置一半的字符!{  fseek(fpin,-i,2);fputc(fgetc(fpin),fpout);i++;}//*下面的語句測試并關(guān)閉打開的文件if(fclose(fpin)||fclose(fpout)){printf("關(guān)閉文件\"d:\\fseekin.txt\"或\"d:\\fseekout.txt\"時出錯!\n");getchar();return 0;}printf("關(guān)閉文件成功!\n");getchar();return 0;}我的問題是為什么將第二個while語句即while(ftell(fpin)!=0&&ftell(fpin)!=-1&&i<=j){  fseek(fpin,-i,2);fputc(fgetc(fpin),fpout);i++;}該為:for(i=1;i<=j;i++){  fseek(fpin,-i,2);fputc(fgetc(fpin),fpout);i++;}
查看完整描述

1 回答

?
守著一只汪

TA貢獻(xiàn)1872條經(jīng)驗(yàn) 獲得超4個贊

for(i=1;i<=j;i++)
{  
fseek(fpin,-i,2);
fputc(fgetc(fpin),fpout);
i++;
}
每次i自加兩次,當(dāng)然提前了,而且是隔位的,循環(huán)體內(nèi)i++刪了


查看完整回答
反對 回復(fù) 2023-03-08
  • 1 回答
  • 0 關(guān)注
  • 130 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號