本文目錄一覽:
C語言程序中for循環和switch的用法?
# includestdio.h
int i, j, num[5], p;
char order;
float score[5], sum = 0.0, average, t, u;
void PrintAll() {
for (i = 0; i 5; i++) { // 依次輸出學號成績//
printf(“%d,%7.2f”, num[i], score[i]);
printf(“\n”);
}
}
void ComputeAverage() {
average = sum / 5.0; // 平均成績//
printf(“全班平均成績為%7.2f\n”, average);
}
void Sort() {
for (j = 0; j 4; j++) // 成績由高到低排序//
for (i = 0; i 4 – j; i++)
if (score[i] score[i + 1]) {
t = score[i + 1];
score[i + 1] = score[i];
score[i] = t;
u = num[i + 1];
num[i + 1] = num[i];
num[i] = u;
}
for (i = 0; i 5; i++)
printf(“%d,%5.2f\n”, num[i], score[i]);
}
void PrintCxcellent() {
for (i = 0; i 5; i++) { // 輸出大於等於80分的學號成績
if (score[i] = 80)
printf(“學號:%d成績:%5.2f\n”, num[i], score[i]);
}
}
char Menu() {
printf(“A:輸出全班學生的學號和成績\n”);
printf(“B:計算並輸出全班的平均成績\n”);
printf(“C:降序並輸出全班學號與成績\n”);
printf(“D:顯示=80分以上學生\n”);
printf(“請選擇(A~D):”);
return getchar();
}
int main() {
for (i = 0; i 5; i++) {
printf(“請輸入學號:\n”);
scanf(“%d”, num[i]);
printf(“請輸入成績:\n”);
scanf(“%f”, score[i]);
sum = sum + score[i];
}
switch (Menu()) {
case ‘A’:
PrintAll();
break;
case ‘B’:
ComputeAverage();
break;
case ‘C’:
Sort();
break;
case ‘D’:
PrintCxcellent;
break;
}
return 0;
}
//你看我改動的,估計老師出題應該我這樣理解的。
C語言之for循環和switch?
1、不能,switch中的break只能結束當前case,與外層for無任何關聯。
2、case 後常量代表的switch(n)中不同的值,比如說上面的case 3:即代表當n為3時執行。
c語言 switch和for
選A,for循環第一次k=1,進入switch此時選擇default:c=c+k,故c=1,繼續運行,由於沒有break,則將進入case
2,此時c=c+1,故c=2,break,進入第二次循環,此時k=2,switch選擇c++,即c=3,break進入第三次循環,由於k=3不滿足k3的條件,故不進入循環體,因此列印輸出c的值為3
c語言中while 、for、switch、case的用法?
1、while() for都是循環語句,使用格式:
while(條件表達式)
{ }
for(表達式1;表達式2;表達式3)
{
}
2、switch是多分支選擇語句,case是switch語句中的一個關鍵字,用來判斷從哪個位置開始執行語句。
格式:
switch(表達式)
{case 常量表達式: …..
case 常量表達式: …..
case 常量表達式: …..
default: ….
}
注意:switch語句結束的條件:碰到break語句,或執行到}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/188505.html