t056: T606(字元字串與檔案處理)
標籤 : TQC 字元字串與檔案處理
通過比率 : 0人/0人 (0%) [非即時]
評分方式:
Tolerant

最近更新 : 2022-06-24 01:14

內容

1.請輸入一個字元,當字元為*(星號)時,程式將結束讀取的動作。
2.題目已提供程式碼片段,執行結果如參考畫面,程式碼有語法、邏輯或其他項目上的錯誤,請全數修正。

本題原題意為:從鍵盤輸入資料到檔案,再印出檔案內容。
但因 judge 系統不做檔案處理,因此無法執行 fprintf 這類指令,所以本題改成從鍵盤輸入資料到陣列,再印出陣列內容。(陣列宣告只宣告10個字)
下列程式更改部分將以紅色標示。

#include <stdio.h>
#include <stdlib.h>
#include <stdlib.h>
int main ()
{
     //FILE fptr;
     //fptr=fopen("character.dat", "w");
     char chrary[100];
     int i,k;
     char ch;
     k=0;
     printf("請輸入一字元: ");
     scanf("%c", &ch);
//將一行多餘的字元丟掉
     while (getchar()!='\n') {
          continue;
     }
     while(ch!='*'){
          chrary[k]=ch;
          printf("請輸入一字元: ");
          scanf("%c", &ch);
//將一行多餘的字元丟掉
          while (getchar() != '\n'){
               continue;
          }
     }
     //fclose(*fptr);
     //fptr=fopen("character.dat", "r");
     printf("\n以下是您輸入的資料:\n");
     for(i=0;i<k;i++)
     //while (fscanf("%c", ch) == EOF)
     {
           printf("%3c\n",chrary[i]);
          //printf("%3c\n",ch );
     }
     return 0;
}

 

輸入說明
輸出說明
範例輸入 #1
0
a
A
X
j
3
#
/
$
~
*
範例輸出 #1
請輸入一字元: 0
請輸入一字元: a
請輸入一字元: A
請輸入一字元: X
請輸入一字元: j
請輸入一字元: 3
請輸入一字元: #
請輸入一字元: /
請輸入一字元: $
請輸入一字元: ~
請輸入一字元: *
以下是您輸入的資料:
  0
  a
  A
  X
  j
  3
  #
  /
  $
  ~

測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (100%): 1.0s , <1K
提示 :
標籤:
TQC 字元字串與檔案處理
出處:
TQC 題庫056 [管理者: zero(管理員) ]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」