-
你的那部分沒有意義。
例如,在迴圈 i==0 的開頭,您的標誌是 0,因此列印序號 1然後進入第二個迴圈 i=1,這樣你就不列印 word[0]。
類似地,每次你點選乙個空格,你都會跳過乙個需要列印的字元。
-
for(i = 0;words[i] != '\0';i++)if(flag == 0) 遇到空格時,在空格後寫乙個序列號。
fprintf(fp,"%d.",j);
flag = 1;太空旗。
j++;此處 words[i] 是您未寫入檔案的空格後的第乙個字元。
elsefprintf(fp,"%c",words[i]);
if(words[i] == ' ')
flag = 0;
試試這個吧。
for(i = 0;words[i] != '\0';i++)if(flag == 0) 遇到空格時,在空格後寫乙個序列號。
fprintf(fp,"%d.",j);
flag = 1;太空旗。
j++;fprintf(fp,"%c",words[i]);寫序號後的字元。
if(words[i] == ' ')
flag = 0;
-
1. 首先開啟dev-c++軟體,點選檔案---另存為,儲存原始檔。
2.在“儲存檔案”對話方塊中,選擇儲存型別為C,檔名為“輸出寬字元”。
3. 首先,定義標頭檔案,如下圖所示。
4. 接下來,定義 main 函式的名稱。 定義乙個寬字元型別的變數 wstr,用 wchar t 表示。
5. 提示輸入寬字元變數,並在鍵盤上輸入任意寬字元。 最後,輸出寬字元變數,並使用 wprintf 命令實現輸出。
6.執行程式,在螢幕上輸入任意寬字元,按回車鍵輸出相應的寬字元。
-
使用fread功能,可直接讀取行。 與您描述的功能完全相同。
-
可以使用 fgets 的原型是 char *fgets(char *s, int n, file *stream); 從流中讀取 n-1 個字元,除非讀取該行,否則引數 s 將接收字串,如果成功,則返回指向 s 的指標,否則返回 null char t[100]; fp=fopen("file","r");fgets(t,81,fp);從 FP 檔案中讀取 80 個字元,如果遇到回車符或少於 80 個字元,則結束讀取。
-
fscanf 很好,您可以指定用作字串的結束標誌的內容。
1 public string md5(string s)2 13
14 return ,'0'); >>>More