實驗四 選擇結構程序設計
【目的與要求】
1.了解C語句表示邏輯量的方法(以0代表“假”以1代表“真”);
2.學會正確使用邏輯運算符和邏輯表達式;
3.熟練掌握if語句和switch語句。
【上機內容】
【一般示例】
【例1】已知三個數a,b,c,找出最大值放于max中。
分析:由已知可得在變量定義時定義四個變量a,b,c和max,a,b,c是任意輸入的三個數,max是用來存放結果最大值的。第一次比較a和b,把大數存入max中,因a,b都可能是大值,所以用if語句中if——else形式。第二次比較max和c,把最大數存入max中,用if語句的第一種形式if形式。Max即為a,b,c中的最大值。
#include "stdio.h"
main()
{
int a,b,c,max; /*定義四個整型變量*/
scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);
if (a>=b)
max=a; /*a>=b*/
else
max=b; /*a if (c>max)
max=c; /*c是最大值*/
printf("max=%d",max);
}
若輸入下列數據,分析程序的執(zhí)行順序并寫出運行結果
(1)a=1,b=2,c=3
(2)a=2,b=1,c=3
(3)a=3,b=2,c=1
(4)a=3,b=1,c=2
(5)a=3,b=3,c=2
(6)a=2,b=1,c=2
【例2】輸入某學生的成績,經處理后給出學生的等級,等級分類如下:
90分以上(包括90):A
80至90分(包括80):B
70至80分(包括70):C
60至70分(包括60):D
60分以下: E
方法一:(用if嵌套`)
分析:
由題意知如果某學生成績在90分以上,等級為A;否則,如果成績大于80分,等級為B;否則,如果成績大于70分,等級為C;否則,如果成績大于60分為D;否則,如果成績小于60分,等級為E;但當我們輸入成績時也可能輸錯,出現小于0或大于100,這時也要做處理,輸出出錯信息。因此,再用if嵌套前,應先判斷輸入的成績是否在0~100之間。
#include"stdio.h"
main()
{
int score;
char grade;
printf("\nplease input a student score:");
scanf("%f",&score);
if(score>100||score<0)
printf("\ninput error!");
else
{ if(score>=90)
grade='A';
else
{ if(score>=80)
grade='B';
else
{if(score>=70)
grade='C';
else
{ if(score>=60)
grade='D';
else grade='E';
}
}
}
printf("\nthe student grade:%c",grade);
}
}
輸入測試數據,調試程序。測試數據要覆蓋所有路徑,注意臨界值,例如此題中得100分,60分,0分以及小于0和大于100的數據。
相關推薦:2010年9月計算機等級考試試題及答案解析專題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |