[問題] switch與if之間的轉換
小弟又來請教各位高手了!!
這次是switch和if之間的轉換
原本的switch
case 'A':
case 'a':
++aCount;
break;
default:
printf("Incorrect letter grade entered.");
printf("Enter a new grade.\n");
break;
printf("\nTotals for each letter grade are:\n");
printf("A: %d\n",aCount);
小弟寫出來的if
if (grade=='a')
++aCount;
if (grade=='A')
++aCount;
printf("\nTotals for each letter grade are:\n");
printf("A: %d\n",aCount);
問題來了,當我不是輸入a或A時,要如何印出
Incorrect letter grade entered.
Enter a new grade.
小弟是有想到用if一個一個列出來
也就是
if(grade!='a'){printf...}
if(grade!='A'){printf...}
但是這樣不會變成很多個if嗎(因為題目是有a A b B c C d D f F )
這樣列就有10個if
請問一下有比較簡潔的方法嗎?
還是說只有這種方法呢?(也就表示switch在某些情況下比if好用)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.66.62.16
推
04/04 16:06, , 1F
04/04 16:06, 1F
→
04/04 16:07, , 2F
04/04 16:07, 2F
→
04/04 17:56, , 3F
04/04 17:56, 3F
→
04/04 17:57, , 4F
04/04 17:57, 4F
→
04/04 18:00, , 5F
04/04 18:00, 5F
→
04/04 18:02, , 6F
04/04 18:02, 6F
推
04/04 18:11, , 7F
04/04 18:11, 7F
→
04/04 18:11, , 8F
04/04 18:11, 8F
→
04/04 18:11, , 9F
04/04 18:11, 9F
→
04/04 18:11, , 10F
04/04 18:11, 10F
→
04/04 18:12, , 11F
04/04 18:12, 11F
→
04/04 18:12, , 12F
04/04 18:12, 12F
→
04/04 18:23, , 13F
04/04 18:23, 13F
→
04/04 18:24, , 14F
04/04 18:24, 14F
→
04/04 19:09, , 15F
04/04 19:09, 15F
小弟完整的程式碼貼上來了
#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')
{
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 ;
}
※ 編輯: ggyy940 來自: 59.105.33.105 (04/04 21:18)
→
04/04 21:27, , 16F
04/04 21:27, 16F
→
04/04 21:27, , 17F
04/04 21:27, 17F
→
04/04 21:28, , 18F
04/04 21:28, 18F
※ 編輯: ggyy940 來自: 59.105.33.105 (04/04 22:16)
→
04/04 22:17, , 19F
04/04 22:17, 19F
→
04/04 22:17, , 20F
04/04 22:17, 20F
→
04/05 00:58, , 21F
04/05 00:58, 21F
※ 編輯: ggyy940 來自: 203.67.188.212 (04/05 13:02)
→
04/05 13:03, , 22F
04/05 13:03, 22F
→
04/05 13:04, , 23F
04/05 13:04, 23F
→
04/05 13:05, , 24F
04/05 13:05, 24F
→
04/05 13:05, , 25F
04/05 13:05, 25F
推
04/05 13:42, , 26F
04/05 13:42, 26F
→
04/05 13:45, , 27F
04/05 13:45, 27F
→
04/05 19:18, , 28F
04/05 19:18, 28F
→
04/05 19:19, , 29F
04/05 19:19, 29F
→
04/05 20:46, , 30F
04/05 20:46, 30F
→
04/05 20:47, , 31F
04/05 20:47, 31F
→
04/05 20:48, , 32F
04/05 20:48, 32F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章