C語言用switch語句進行成績等級判斷
C語言用switch語句進行成績等級判斷可以采用以下的代碼:
main()
{int i,a;
scanf("%d",&a);
i=a/10;
switch a
{case '10':
case '9': printf("A"); break;
case '8': printf("B"); break;
case '7': printf("C"); break;
case '6': printf("D");
else printf("E");
}
}
擴展資料:
Switch在一些計算機語言中是保留字,其作用大多情況下是進行判斷選擇。以C語言來說,switch(開關語句)常和case break default一起使用。
C語言程序語句
Switch用在編程中,如C語言中它經常跟Case一起使用,是一個判斷選擇代碼。其功能就是控制流程流轉的。
直線翻譯:switch語句,即“切換”語句;case即“情況”。
switch語句的語法如下(switch,case,break和default是關鍵字):
switch ( 變量表達式 )
{
case 常量1 :語句;break;
case 常量2 :語句;break;
case 常量3 :語句;break;
case 常量n:語句;break;
default :語句;break;
}
參考資料來源:百度百科-switch (計算機語言關鍵字)
用switch語句怎樣判斷成績的等級
#include
。 case常量表達式n: 語句n; default: 語句n+1; } 說明 switch后面的括號內的表達式,ANSI標準允許為任何類型。
當表達式與某一個case后面的常量表達式相等時,就執行case后面的語句,若沒有匹配,則執行default后面的語句。 每一個case的常量表達式的值須互不相同,否則便會出現矛盾。
各個case和default的出現次序不影響結果。 執行完一個case語句,流程就轉移到下一個case并繼續執行.因此在case的分支后,加break語句來跳出switch語句。
參考資料來源:百度百科—switch循環。
用switch語句統計各等級成績的個數
#include #include void main() { double score; printf("請輸入分數:\n"); scanf("%lf",&score); switch((int)(score/10))//switch((int)score/10)出現嚴重錯誤,switch(((int)score)/10)出現嚴重錯誤, { case 10: case 9:printf("A(最好)\n");break; case 8:printf("B(優秀)\n");break; case 7:printf("C(良好)\n");break; case 6:printf("D(及格)\n");break; case 5: case 4: case 3: case 2: case 1: case 0:printf("E(不及格)\n");break; default:printf("Error!\n"); } } 例二: #include void main() { char rank; printf("請輸入分數等級:(A、B、C、D、E)\n"); scanf("%c",&rank); switch(rank)//switch((int)score/10)出現嚴重錯誤,switch(((int)score)/10)出現嚴重錯誤, { case 'A':printf("A(90~100)\n");break; case 'B':printf("B(80~89)\n");break; case 'C':printf("C(70~79)\n");break; case 'D':printf("D(60~69)\n");break; case 'E':printf("E(0~59)\n");break; default:printf("error!\n");break; } } #include 與if語句的不同:If語句中若判斷為真則只執行這個判斷后的語句,執行完就跳出if語句,不會執行其他if語句;而switch語句不會在執行判斷為真后的語句之后跳出循環,而是繼續執行后面所有case語句。 在每一case語句之后增加break 語句,使每一次執行之后均可跳出switch語句,從而避免輸出不應有的結果。 參考資料來源:switch-百度百科。 #include <stdio.h> #define N 100 int main() { int average=0,i,n,a[N],numA,numB,numC,numD,numE; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=0;i<n;i++) average+=a[i]; average=average/n; printf("平均成績是:%d\n",average);\ numA=numB=numC=numD=numE=0; for(i=0;i<n;i++) switch(a[i]/10) { case 10: case 9:numA++;break; case 8:numB++;break; case 7:numC++;break; case 6:numD++;break; default :numE++; } printf("A等級人數為:%d\n",numA); printf("B等級人數為:%d\n",numB); printf("C等級人數為:%d\n",numC); printf("D等級人數為:%d\n",numD); printf("E等級人數為:%d\n",numE); getchar(); return 0; } 已調試過,如果有疑問可以聯系。 #include"stdio.h"main(){int a,s; scanf("%d",&a); s=a / 10; switch (s) { case 10:printf("A");break; case 9:printf("A");break; case 8: printf("B");break; case 7:printf("C");break; case 6:printf("D");break; default:printf("F");break; } getch(); }程序中getch();為winTC編譯器所必須的。 如果你使用其他編譯器,可以把它省去。如果你是考試用的,最好把它省去。 程序已驗證,是一個正確的程序。樓上的有必要搞那么復雜嗎???。 轉載請注明出處華閱文章網 » switch語句成績 求 用C語言中switch語句編寫學生成績問題
java中 使用switch語句實現學生成績等級
用switch語句統計各等級成績的個數
C語言 使用switch語句,將百分制成績轉換為等級分:90以上A,80-89