作者Dannvix (丹丹)
看板C_and_CPP
標題Re: [問題] switch的小問題
時間Thu Jun 17 22:54:34 2010
提供一個使用 switch 的寫法作為參考 (為了符合標題嘛XD
#include <stdio.h>
int main (void) {
int x;
printf("please input your grade: ");
scanf("%d", &x);
switch (x) {
case 90 ... 100: x = 1; break;
case 80 ... 89: x = 2; break;
case 70 ... 79: x = 3; break;
case 60 ... 69: x = 4; break;
case 0 ... 59: x = 5; break;
default:
printf("unexpected grade\n");
return 1;
}
printf("your grade level is %d\n", x);
return 0;
}
※ 引述《money601 (摳您雞挖)》之銘言:
: 小弟是初學者
: 想寫一個90~100成績為A
: 80~89成績為B依此類推的程式
: 但是結果不論輸入任何數字
: 成績都是A
: 請各位大大幫幫忙
: 感謝
: 有問題的code:
: int main()
: {
: int x;
: cout << "key in 100~0 : ";
: cin >> x;
: if(100<x<90)
: x=1;
: else if (89<x<80)
: x=2;
: else if (79<x<70)
: x=3;
: else if (69<x<60)
: x=4;
: else if (59<x<0)
: x=5;
: switch (x){
: case 1:
: cout << "A";
: break;
: case 2:
: cout << "B";
: break;
: case 3:
: cout << "C";
: break;
: case 4:
: cout << "D";
: break;
: case 5:
: cout << "E";
: break;
: default:
: cout << "100<x<0" ;
: }
: }
:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.227.85.214
推 VictorTom:傳說中的 ... 又出現了XD 06/17 23:06
→ Dannvix:我會學到 ... 的用法也是因為這個板 XD 06/17 23:38
推 MOJS:為什麼會有ERROR0.0 06/17 23:51
→ netsphere:第一次看到 ... 這是什麼? 06/17 23:55
→ akasan:it's gcc Extensions 06/18 00:11
→ Dannvix:驚!原來是 GCC 才能用orz 我還以為是 standard 06/18 00:36
→ softwind:not standard... and 我恨 switch, 06/18 00:48
推 hilorrk:第一次看到O.O 06/18 01:52
推 fly9588: ... 靠這招學到了XDD 06/18 03:14
→ tinlans:還有就是 ... 左右記得要空格,以前有人沒空編不過。 06/18 05:14
推 sunkill:那...只能用在switch嗎?bow 06/18 08:12
→ tittanlee:我記得有篇編譯器,不認得...吧。 06/18 12:02
推 money601:酷!!又學到一招 06/19 03:31
→ money601:不過有個問題,default好像沒發生作用,超過輸入直接跳出 06/19 03:41
推 sunkill:有作用 但不一定是這樣的架構 06/20 15:33