看板 C_and_CPP 關於我們 聯絡資訊
不好意思 最近剛起步學程式語言 想請問一下若想顯示下列格式 請輸入姓名: tohru(由使用者輸入) 因為我不太會用scanf讀取輸入字串 (還沒學到陣列和指標) 所以我用fgets 可是程式只能執行到請輸入計概成績: 65 程式就停住了 想請問一下這是什麼問題 (使用Dev C++ 4.9.9.2 編譯) 若fgets改成scanf又要怎麼改呢? 程式碼如下: #include <stdio.h> #include <stdlib.h> int main() { char str1[]=""; int comp_grade=0, math_grade=0, eng_grade=0; printf("請輸入姓名: "); fgets(str1,80,stdin); printf("請輸入計概成績: "); scanf("%d\n", &comp_grade); printf("請輸入數學成績: "); scanf("%d\n", &math_grade); printf("請輸入英文成績: "); scanf("%d\n", &eng_grade); printf("統計中.....\n\n"); printf("%s的成績如下", str1); printf("========================\n"); printf("計概成績: %d", comp_grade); printf("數學成績: %d", math_grade); printf("英文成績: %d", eng_grade); printf("========================"); system("pause"); return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.243.66 ※ 編輯: tohru 來自: 140.116.243.66 (04/28 11:23)
Peruheru:scanf裡面不需要換行吧XD 04/28 11:23
Peruheru:你打完資料按下Enter鍵時就會換行了 04/28 11:24
Peruheru:把scanf裡面的\n換行符號去掉吧 04/28 11:28
tohru:謝謝您的回應 已解決了 ^^ 04/28 11:30