五灸拍、選擇結(jié)構(gòu)之switch和 ?:

一做祝、switch 語法

     switch(整型/字符型/枚舉){   //()括號中間只支持 整型/字符型/枚舉
             case 值1:
                   代碼塊1;
                   break;
              .......代表很多個case break;
            case 值N:
                  代碼塊N;
              break;
            default:
                    defalut代碼塊;
              break;
     }

案例

整型案例

 printf("請從控制臺輸入一個整型:");
    int number;
    scanf("%d",&number);
    switch(number){
        case 1:
            printf("語法塊1");
            break;
        case 2:
            printf("語法塊2");
            break;
        case 3:
            printf("語法塊3");
            break;
        case 4:
            printf("語法塊4");
            break;
        case 5:
            printf("語法塊5");
            break;
        default:
            printf("語法default");
            break;
    }

字符案例:


printf("請從控制臺輸入一個字符后回車:");
    char y;
    scanf("%c",&y);
    switch(y){
    case 'a':
        printf("語法塊a");
        break;
    case 'b':
        printf("語法塊b");
        break;
    case 'c':
        printf("語法塊c");
        break;
    case 'n':
        printf("語法塊n");
        break;
    case 56:    //  字符 '8'的 ascii碼對應(yīng)十進制 56
        printf("語法塊56");
        break;
    default:
        printf("語法塊default");
            break;
    }

break;講解

break 跳出語法塊.如果case 結(jié)束時 沒有break 就會直接執(zhí)行下一個case 當中的語法,直到碰到break后跳出鸡岗。
案例

 printf("請從控制臺輸入一個字符后回車:");
    char y;
    scanf("%c",&y);
    switch(y){
    case 'a':
        printf("語法塊a");
        break;
    case 'b':
        printf("語法塊b");
    case 'c':
        printf("語法塊c");

    case 'n':
        printf("語法塊n");
        break;
    case 56:
        printf("語法塊56");
        break;
    default:
        printf("語法塊default");
        break;
    }

二混槐、#?語法:
三元表達式
說明語法:

"邏輯表達式"?"為真執(zhí)行?號后面": "為假執(zhí)行:號后面"

前面一定要有賦值語句
案例1:

int a=4,b =10;
char sb = a<b ? 's' : 'b';
 printf("%c\n",sb);

對應(yīng)if語句

 if(a< b){
        sb = 's';
    }else{
        sb = 'b';
    }

案例2:

int a = 4,b = 10;
char sb = a < b?'s':'b';
printf("%c",sb);

練習1:

從控制臺輸入一個整型分數(shù)(0-100)之間:如果大于等于90分則打印優(yōu)秀轩性,大于等于80分小于90分打印良好声登,大于等于70分小于80分還好,大于等于60分小于70分打印及格揣苏,小于60分則打印不級格悯嗓。
答案:

printf("從控制臺輸入一0到100的整數(shù)后回車");
int score;
scanf("%d",&score);
switch(score/10){
    case 10:
    case 9:
        printf("優(yōu)秀");
        break;
    case 8:
        printf("良好");
        break;
    case 7:
        printf("還好");
        break;
    case 6:
        printf("及格");
        break;
    default:
        printf("不及格");
        break;
}

作業(yè)1

輸入一個字符,若輸入的為大寫英文字母,則輸入其對應(yīng)的小寫英文字母,若輸入的是小寫字母則輸出對應(yīng)的大寫字母,若輸出的是非英文字母卸察,則原樣輸出绅作。
提示:參照 ascii表碼找思路
答案:

//    switch(c){
//        case 'a':
//        case 'b':
//        case 'c':
//        case 'd':
//        case 'e':
//        case 'f':
//        case 'g':
//        case 'h':
//        case 'i':
//        case 'j':
//        case 'z':
//            c -= 32;
//            break;
//        case 'A':
//        case 'B':
//        case 'Z':
//          c += 32;
//            break;
//    }
//
//    printf("對應(yīng)的輸入字符是:%c",c);

作業(yè)2

預(yù)習 ? :語法

思考題作業(yè)3,(可選)

編寫程序,輸入一個年份蛾派,判斷其是否為閏年俄认。
提示:能被4整除,但不能被100整除為閏年洪乍。能被400整除直接是閏年眯杏。

 printf("請輸入一個年份:");
    int year;
    scanf("%d",&year);
    int flag = 0;  // 0 不是潤年  1 是潤年
    switch((year % 400 == 0 )  ||  (year % 4 ==0 && year % 100 !=0)){
        case 1:
           flag = 1;
           break;
        case 0:
           flag = 0;
           break;
    }
    if(flag == 1 ){
         printf("%d是潤年",year);
    }else{
        printf("%d不是潤年",year);
    }

作業(yè)4

把上面的練習3改成用 三元表達式(?:)來做


作業(yè)5預(yù)習 循環(huán)語句(for /while /do while)


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市壳澳,隨后出現(xiàn)的幾起案子岂贩,更是在濱河造成了極大的恐慌,老刑警劉巖巷波,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萎津,死亡現(xiàn)場離奇詭異,居然都是意外死亡抹镊,警方通過查閱死者的電腦和手機锉屈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來垮耳,“玉大人颈渊,你說我怎么就攤上這事≈辗穑” “怎么了俊嗽?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長铃彰。 經(jīng)常有香客問我绍豁,道長,這世上最難降的妖魔是什么牙捉? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任竹揍,我火速辦了婚禮敬飒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鬼佣。我一直安慰自己驶拱,他們只是感情好霜浴,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布晶衷。 她就那樣靜靜地躺著,像睡著了一般阴孟。 火紅的嫁衣襯著肌膚如雪晌纫。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天永丝,我揣著相機與錄音锹漱,去河邊找鬼。 笑死慕嚷,一個胖子當著我的面吹牛哥牍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播喝检,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嗅辣,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了挠说?” 一聲冷哼從身側(cè)響起澡谭,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎损俭,沒想到半個月后蛙奖,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡杆兵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年雁仲,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片琐脏。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡伯顶,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出骆膝,到底是詐尸還是另有隱情祭衩,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布阅签,位于F島的核電站掐暮,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏政钟。R本人自食惡果不足惜路克,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一樟结、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧精算,春花似錦瓢宦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至廉嚼,卻和暖如春玫镐,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背怠噪。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工恐似, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人傍念。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓矫夷,卻偏偏與公主長得像,于是被迫代替她去往敵國和親憋槐。 傳聞我的和親對象是個殘疾皇子双藕,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容