基本控制结构程序设计习题.doc
文本预览下载声明
第二章 基本控制结构程序设计习题
一.基本概念与基础知识自测题
2.1 程序阅读题
2.1.1 设有说明:
int a=3, b=100;
下面的循环语句执行 (1) 次,执行后a、b的值分别为 (2) 、 (3) 。
while(b/a5){
if(b-a25) a++;
else b/=a;
}
解答:
本题检查学生整除的概念。跟踪:
a b b/a 循环次数 b-a 3 100 33 1 97 4 100 25 2 96 5 100 20 3 95 … … … … … 15 100 6 13 85 16 100 6 14 84 17 100 5 停 (1)14
(2)17
(3)100
2.1.2 设有说明:
int x,y,n,k;
下面程序段的功能是备选答案中的 (1) ,当n=10,x=10打印结果是 (2) 。
cinxn;
k=0;
do{
x/=2;
k++;
}while(kn);
y=1+x;
k=0;
do{
y=y*y;
k++;
}while(kn);
coutyendl;
备选答案:
A. B. C. D.
解答:
第一个循环使x成为:;y成为:;第二个循环使y成为:;
(1)B
考虑整除,当x连除4次2以后即为0,所以:为0
(2)1
2.1.3 请看如下程序段:
if(num==1) cout”Alpha”;
else if(num==2) cout”Bata”;
else if(num==3) cout”Gamma”;
else cout”Delta”;
当num的值分别为1、2、3时,上面程序段的输出分别为(1) 、(2) 、(3) 。
解答:
检查条件语句与字符串输出概念:
(1)Alpha
(2)Bata
(3)Gamma
2.1.4 执行下面程序段后,m和k的值分别为 (1) 、 (2) 。
int m,k;
for(k=1,m=0;k=50;k++){
if(m=10) break;
if(m%2==0){
m+=5;
continue;
}
m-=3;
}
解答:注意continue语句的使用
初值 m=0 k=1 第1次循环后 m=5 k=2 第2次循环后 m=2 k=3 第3次循环后 m=7 k=4 第4次循环后 m=4 k=5 第5次循环后 m=9 k=6 第6次循环后 m=6 k=7 第7次循环后 m=11 k=8 第8次循环 m=11结束 k=8,k++未做 (1)11
(2)8
二.编程与综合练习题
2.2 有一个函数:
编写程序,输入x,输出y。
解:
#include iostream
using namespace std;
int main(){
double x,y;
cout输入x=;
cinx;
if(x1) y=x;
else if(x10) y=2*x-1;
else y=3*x-11;
couty=yendl;
return 0;
}
2.3 设计程序将输入的百分制成绩转换为五分制输出,90分以上为5分,80(89分为4分,70(79分为3分,60(69分为2分,60分以下为1分。
解:10分一档用10进行整除获得,转换用开关语句实行。
#include iostream
using namespace std;
int main(){
int mark,result; //mark是百分制成绩,result是5分制
cout请输入百分制成绩:endl;
cinmark;
if(mark0) {
cout缺考!endl;
return 0;
}
switch (mark/10){
case 9: case 10:
result=5;
cout输出五分制成绩:resultendl;
break;
case 8:
result=4;
cout输出五分制成绩:resultendl;
break;
case 7:
result=3;
cout输出五分制成绩:resultendl;
break;
case 6:
result=2;
cout输出五分制成绩:resultendl;
break;
case 5:case 4:case 3:case 2:case 1:case 0:
result=1;
cout输出五分制成绩:resultendl;
break;
default:
cout输入错误!endl;
}
return 0;
}
2.4 编程计算个人所得税。个人所得税率表如下:月收入1200元起征,超过起征点500元以内部分税率5%,超过50
显示全部