⑴ 編寫c語言程序 用switch結構或if語句 輸入成績 輸出等級
// ConsoleApplication17.cpp : 定義控制台應用程序的入口點。
//
#include "stdafx.h"
#include<stdio.h>
int main()
{
int score;
printf("請輸入分數: ");
scanf("%d",&score);
switch(score/10)
{
case 10:
case 9:
printf("A(最好) ");
break;
case 8:
printf("B(優秀) ");
break;
case 7:
printf("C(良好) ");
break;
case 6:
printf("D(及格) ");
break;
default:
printf("E(不及格) ");
break;
}
}
⑵ C語言設計程序對輸入的百分制的學成成績,判斷所屬等級A、B、C、D、E,
#include<stdlib.h>
#include<stdio.h>
intmain(intaragc,char*argv[])
{
intscore;
intret;
printf("pleaseinputscore: ");
while(1){
ret=scanf("%d",&score);
if(ret){
if(score>=90){
printf("A ");
}
elseif(score>=80)
printf("B ");
elseif(score>=70)
printf("C ");
elseif(score>=60)
printf("D ");
else
printf("E ");
}
else
break;
}
return0;
}
⑶ 用C語言實現一個函數:輸入一個學生成績,顯示他的等級,等級轉換原則:90-100為A等,80-89為B等,70-7...
用if語句判定就行了呀,首先判定輸出成績是否有效即成績score<0||score>100,讓重新輸入。其次判定E,score<60,D,score>=60&&score<70,C,score>=70&&score<80,B,score>=80&&score<90,A,score>=90,對應輸出就行。
⑷ C語言 輸入成績輸出對應等級
比較簡單的做法是利用嵌套的if語句來實現,它的特點是應用靈活簡便,可以不受分界點位置的限制,而且可以適用於浮點數。
float x;
int a,b,c,d,e;
a=b=c=d=e=0;
while(scanf("f",&x)==1)
if(x<=100)
if(x>=90){a++;putchar('A');}
else if(x>=80){b++;putchar('B');}
else if(x>=70){c++;putchar('C');}
else if(x>=60){d++;putchar('D');}
else {e++;putchar('E');}
⑸ C語言用switch語句進行成績等級判斷
摘要 C語言用switch語句進行成績等級判斷可以採用以下的代碼:
⑹ C語言輸入學生成績判斷是否掛科
使用scanf();讀取5個學生的成績,分別保存到int類型變數score01,score02,score03,score04,score05中,然後將這五個變數分別與及格成績SCORE_PASS=60作比較,大於等於該值,則判斷為及格,否則為不及格。
⑺ 怎麼樣用「C語言」判斷輸入的學生成績的等級
分數n
switch(n/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;
default:printf("不及格");
}
⑻ c語言判斷成績等級循環結構
第一種在scanf後面應該加一個getchar
你為什麼在第二個後面知道加第一個後面不知道加...
因為你在做scanf輸入時實際上輸入的是 88(成績) 回車 來結束輸入的
這個時候你把88賦值給了a但是 回車還在緩沖區里 如果你不用getchar來吸收回車那麼
你第二次scanf時 由於緩沖區裡面還有一個回車 所以不等你輸入他就將回車賦值給了c
因此無法進行後續循環 你輸入的Y/N反而是被getchar讀取了
第二種問題和上面類似 在每一個scanf後面加一個getchar來吸收回車
或者使用fflush(stdin); rewind(stdin);來刷新緩沖區
然後你最後判斷處出錯了
if(b=='Y')
if(b=='N')break;
這里滿足break的條件是先讓b=Y 如果 b = Y判斷成功 在判斷b=N 當b=Y滿足進一步要滿足b=N這怎麼可能能夠break...
應該if(b=='Y') continue;
else if(b=='N')break;
另外我覺得這個判斷有點繁瑣了 你只需要判斷一種就行了
只保留if(b=='N')break;就行了 當輸入N時結束 其他任意輸入繼續 就夠了
⑼ c語言if判斷成績等級,輸入grade,輸出score怎麼做
用if嵌套,一個if只能輸出兩個不同的成績斷,自定義要用嵌套的方式
另外,判斷條件一定要加前加後,不能不然可能從在演算法上的錯誤,就是大於多少並且小於多少,不能只有大於多少,沒有小於多少,
最好按順序做。不要跳躍,