題目:
輸入學生的百分制成績(0~100的整數),輸出對應的成績等級(A~E)。
對應規則如下:
[90,100]:等級 A
[80,90):等級 B
[70,80):等級 C
[60,70):等級 D
[0,60):等級 E
具體要求:
(1)輸入,輸出要有提示信息,輸入成績后要檢查數據的結合性,如果輸入的成績不是0~100的數,則輸出“輸入錯誤!”。程序運行結果示例如下:
請輸入百分制成績:86
成績等級: B
(2)分別使用嵌套的if語句和switch語句實現多分支選擇
(3)分別輸入109,59,60,70,80,90,100和其他整數,對程序進行測試。
Tip:
注意定義變量使用的語句(int,double,float等)
#define _CRT_SECURE_NO_WARNINGS 1與scanf_s可以二選一在這里面
代碼如下:
先用if語句根據用戶輸入的數據,進行判斷輸入對應的數字,再根據數字對應輸出成績等級其實本人認為,這個題可以用if語句直接解決,有效的節省空間,但是不知道怎么了,在寫代碼的時候想if語句和switch語句一起使用,就用了現在的結果,還應該有最優解,歡迎斧正!
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> main() { int k, j; k = 0; printf("請輸入百分制成績:"); scanf_s("%d", &j); if (j <= 100 && j >= 90) { k = 1; } else if (j < 90 && j >= 80) { k = 2; } else if (j < 80 && j >= 70) { k = 3; } else if (j < 70 && j >= 60) { k = 4; } else if (j < 60 && j >= 0) { k = 5; } else { printf("\t輸入錯誤!\n"); } switch (k) { case 1:printf("\t成績等級:A\n"); break; case 2:printf("\t成績等級:B\n"); break; case 3:printf("\t成績等級:C\n"); break; case 4:printf("\t成績等級:D\n"); break; case 5:printf("\t成績等級:E\n"); break; } printf("歡迎使用李同學所寫的代碼,希望能給到你一些幫助!"); }
在此就給出:一張輸入數據正確的截圖 和 一張輸入錯誤數據的截圖
書上說這個題難度:兩顆星
有想看什么程序的 可以評論喔~~~
阿婆主的粉絲少 肯定會回的啦
我是李同學,希望此篇內容對你有幫助