文档详情

基本控制结构程序设计习题.doc

发布:2017-08-19约1.23万字共15页下载文档
文本预览下载声明
第二章 基本控制结构程序设计习题 一.基本概念与基础知识自测题 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
显示全部
相似文档