Re: [問題] switch與if之間的轉換(印不出要的結果...)

看板C_and_CPP (C/C++)作者 (★GY大★)時間16年前 (2010/04/11 19:41), 編輯推噓0(004)
留言4則, 2人參與, 最新討論串1/1
原程式碼 #include<stdio.h> int main (void) { int grade; int aCount=0; printf("Enter the letter grades.\n"); printf("Enter the EOF to end imput.\n"); while( ( grade=getchar() )!=EOF ) { if (grade=='a'||grade=='A') ++aCount; if (grade=='\n') { } else { printf("Incorrect letter grade entered."); printf("Enter a new grade.\n"); } printf("\nTotals for each letter grade are:\n"); printf("A: %d\n",aCount); return 0; } 小弟試了很多次,但終究在輸入a或A時,會跑出Incorrect letter那兩行, 看了很久,邏輯上也不知道哪裡出問題 麻煩高手指點一下><~~~ 這題已經卡了很久了><~~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.172.60

04/11 19:47, , 1F
不意外呀, 因為你寫這樣除了 \n以外都會印
04/11 19:47, 1F

04/11 19:49, , 2F
但是如果去掉\n 這樣每換一行就會跑一次incorrect
04/11 19:49, 2F

04/11 19:55, , 3F
解決了....用else之後 再加個if就好了
04/11 19:55, 3F

04/11 19:55, , 4F
應該說是if前面加個else
04/11 19:55, 4F
文章代碼(AID): #1BmRLNpu (C_and_CPP)
文章代碼(AID): #1BmRLNpu (C_and_CPP)