第6章 循环结构程序设计习题

合集下载

《Python程序设计基础》习题答案与分析

《Python程序设计基础》习题答案与分析

Python程序设计基础习题答案与分析程昱第1章基础知识1.1 简单说明如何选择正确的Python版本。

答:在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高支持哪个版本的Python,是Python 2.x还是Python 3.x,最高支持到Python 2.7.6还是Python 2.7.9。

这些问题都确定以后,再做出自己的选择,这样才能事半功倍,而不至于把大量时间浪费在Python的反复安装和卸载上。

同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。

尽管如此,Python 3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python 3.x系列的最高版本(目前是Python 3.4.3)。

1.2 为什么说Python采用的是基于值的内存管理模式?Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址,例如下面的代码。

>>> x = 3>>> id(x)10417624>>> y = 3>>> id(y)10417624>>> y = 5>>> id(y)10417600>>> id(x)10417624>>> x = [1, 2, 3, 1, 1, 2]>>> id(x[0])==id(x[3])==id(x[4])True1.3 解释Python中的运算符“/”和“//”的区别。

答:在Python 2.x中,“/”为普通除法,当两个数值对象进行除法运算时,最终结果的精度与操作数中精度最高的一致;在Python 3.x中,“/”为真除法,与除法的数学含义一致。

《谭浩强《C程序设计》(第4版)笔记和课后习题详解》读书笔记模板

《谭浩强《C程序设计》(第4版)笔记和课后习题详解》读书笔记模板

第11章常见错误分 析
1.1复习笔记 1.2课后习题详解
2.1复习笔记 2.2课后习题详解
3.1复习笔记 3.2课后习题详解
4.1复习笔记 4.2课后习题详解
5.1复习笔记 5.2课后习题详解
6.1复习笔记 6.2课后习题详解
7.1复习笔记 7.2课后习题详解
8.1复习笔记 8.2课后习题详解
作者介绍
这是《谭浩强《C程序设计》(第4版)笔记和课后习题详解》的读书笔记模板,暂无该书作者的介绍。
谢谢观看
目录分析
第2章算法——程 序的灵魂
第1章程序设计和C 语言
第3章最简单的C程 序设计——顺序程
序设计
1
第4章选择结构 程序设计
2
第5章循环结构 程序设计
3
第6章利用数组 处理批量数据
4 第7章用函数实
现模块化程序 设计
5
第8章善于利用 指针
第10章对文件的输 入输出
第9章用户自己建 立数据类型
9.1复习笔记 9.2课后习题详解
10.1复习笔记 10.2课后习题详解
11.1复习笔记 11.2课后习题详解
读书笔记
这是《谭浩强《C程序设计》(第4版)笔记和课后习题详解》的读书笔记模板,可以替换为自己的心得。
精彩摘录
这是《谭浩强《C程序设计》(第4版)笔记和课后习题详解》的读书笔记模板,可以替换为自己的精彩内容 摘录。
谭浩强《C程序设计》(第4版)笔记 和课后习题详解
读书笔记模板
01 思维导图
03 目录分析 05 精彩摘录
目录
02 内容摘要 04 读书笔记 06 作者介绍
思维导图
本书关键字分析思维导图
习题

选择结构程序设计,循环结构程序设计习题

选择结构程序设计,循环结构程序设计习题
default:n=0;k--;
case 2: case 4;n+ =2;k--;break;
}
printf("%d",n);
}while(k>0 && n<5);
}
程序的运行结果是【】。
5. #include<stdio.h>
main()
{int a,b,d=241;a=d/100%9; b=(-1)&&(-1);
B)if((a>b)||(b>c) k=1;
else k=0;
C)if(a<=b) k=0;
else if(b<=c) k=1;
D)if(a>b) k=1;
else if(b>c) k=1;
else k=0;
6.以下是if语句的基本形式:
if(表达式)
语句
其中“表达式”
A)必须是逻辑表达式
B)必须是关系表达式
A)n=0;while((ch=getchar())!=’\n’)n++;
B) n=0;while(getchar()!=’\n’)n++;
C)for(n=0; getchar()!=’\n’;n++);
D)n=0;for(ch=getchar();ch!=’\n’;n++);
4.有以下程序
# include <stdio.h>
case 2: printf(" $ "); break;
}
default: printf("&");
}
printf("\n");

高级语言程序设计习题(最新版带答案)

高级语言程序设计习题(最新版带答案)

第1章C语言概述习题1.单项选择题(1)C语言是在B语言的基础上产生的。

A.AB.BC.DD.E(2)在C语言中,每个语句必须以D结束。

A.回车符B.冒号C.逗号D.分号(3)标识符和关键字间,要用C隔开。

A.回车符B.冒号C.空格D.分号(4)用C语言编写的源文件经过编译,若没有产生编译错误,则系统将(B)。

A.生成可执行目标文件B.生成目标文件C.输出运行结果D.自动保存源文件(5)下列说法中正确的是(B)。

A.由于C源程序是高级语言程序,因此一定要在TC软件中输入B.由C源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入C.由于C程序是高级语言程序,因此输入后即可执行D.由于C程序是高级语言程序,因此它由命令组成(6)下列说法中正确的是(A)。

A.C语言程序由主函数和0个或多个函数组成B.C语言程序由主程序和子程序组成C.C语言程序由子程序组成D.C语言程序由过程组成(7)下列说法中错误的是(D)。

A.主函数可以分为两个部分:主函数说明部分和主函数体B.主函数可以调用任何非主函数的其他函数C.任何非主函数可以调用其他任何非主函数D.程序可以从任何非主函数开始执行2.填空题(1)C语言只有32个关键字和9种控制语句。

(2)C语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。

(3)每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。

(4)在C语言程序中允许出现的字符集是ASCII码字符集。

(5)C语言的程序中有特殊含义的英语单词称为保留字。

(6)C语言标识符的长度是前8位有效。

(7)C语言中,标识符的定义规则是以字母或下划线为开头。

(8)C语言程序的注释可以出现在程序中的任何地方,它总是以/*符号作为开始标记,以*/符号作为结束标记。

第2章数据类型运算符和表达式习题1.单项选择题(1)以下选项中,正确的C语言整型常量是D。

C语言程序设计教程李凤霞第三版课后答案

C语言程序设计教程李凤霞第三版课后答案

1 【C语言】《C语言程序设计教程(第二版)》习题答案说明1. 本文所指的《C语言程序设计教程(第二版)》是李凤霞主编、北京理工大学出版社出版的,绿皮。

2 第1章程序设计基础知识一、单项选择题(第23页)1-4.CBBC 5-8.DACA二、填空题(第24页)1.判断条件2.面向过程编程3.结构化4.程序5.面向对象的程序设计语言7.有穷性8.直到型循环9.算法10.可读性11.模块化12.对问题的分析和模块的划分三、应用题(第24页)2.源程序:main(){int i,j,k; /* i:公鸡数,j:母鸡数,k:小鸡数的1/3 */printf("cock hen chick\n");for(i=1;i<=20;i++)for(j=1;j<=33;j++)for(k=1;k<=33;k++)if (i+j+k*3==100&&i*5+j*3+k==100)printf(" %d %d %d\n",i,j,k*3);}执行结果:cock hen chick4 18 788 11 8112 4 843.现计算斐波那契数列的前20项。

递推法源程序:main(){long a,b;int i;a=b=1;for(i=1;i<=10;i++) /*要计算前30项,把10改为15。

*/ {printf("%8ld%8ld",a,b);a=a+b;b=b+a;}}递归法源程序:main(){int i;for(i=0;i<=19;i++)printf("%8d",fib(i));}fib(int i){return(i<=1?1:fib(i-1)+fib(i-2));}执行结果:1 123 5 8 13 21 34 5589 144 233 377 610 987 1597 2584 4181 6765 4.源程序:#include "math.h";main(){double x,x0,deltax;x=1.5;do {x0=pow(x+1,1./3);deltax=fabs(x0-x);x=x0;}while(deltax>1e-12);printf("%.10f\n",x);}执行结果:1.32471795725.源程序略。

C语言程序设计各章练习题

C语言程序设计各章练习题

C语言程序设计各章练习题《C 语言程序设计》各章练习题2016年12月汇编第1-3章 C 语言基础、编程规范、顺序结构程序设计编程题1:设a 和b 均为int 型变量,编写一个程序,通过键盘读入a,b 的值,然后交换a,b 的值。

要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b 的值,交换后a,b 的值。

附加要求:(1)允许定义第3个变量,实现交换;(2)不允许定义第3个变量,实现交换。

第4章选择结构程序设计编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎪⎩⎪⎪⎨⎧>=<+-=0020212x x x x x y编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎩⎪⎨⎧>≤≤--<=002222x x x x x y编程题3:求 ax 2+bx+c=0方程的解。

(只输出b 2-4ac>=0的求解结果,小于0,输出“不予求解!”)第5章 循环结构程序设计编程题4:编程计算∑=ni i 1。

要求提示键盘输入n ,如n 为负数,不予计算,直接返回。

编程题5:编程序计算n !,要求n 从键盘输入,如n 小于0,不予计算。

编程题6:从键盘输入一个数n ,判断n 是否是素数。

编程题6:编写程序输出1~100之间的偶数,要求屏幕显示时5个偶数一行,每个数占5位,右对齐。

编程题7:编程计算100到1000之间有多少个数其各位数字之和是5,并将其输出。

编程题8:求满足下列条件的三位数n ,它除以11(整数相除)所得到的商等于n 的各位数字的平方和,且其中至少有二位数字相同的数。

编程题9:有一些十进制整数对ab 和cd 具有如下特性:ab×cd=ba×dc,其中a≠b 且c≠d。

如:12×42=21×24。

请编程找出30~50之间满数,将100~200之间的素数全部输出,要求屏幕上每个数占4位,每行显示5个素数,左对齐。

循环结构习题有答案

循环结构习题有答案

第6章循环结构程序设计1.以下叙述正确的是()A、do-while语句构成的循环不能用其它语句构成的循环代替。

B、d o-while语句构成的循环只能用break语句退出。

C、用do-while语句构成的循环,在while后的表达式为非零时结束循环。

D、用do-while语句构成的循环,在while后的表达式为零时结束循环。

答案:D2.以下程序的输出结果是( )A、10,1 9,2B、9,8 7,6C、10,9 9,0D、10,10 9,1main( ){int x=10,y=10,i;for(i=0;x>8;y=++i)printf("%d,%d",x--,y);}答案:D注解:循环执行2次,由x控制循环的执行次数;输出值为两次循环过程中x每次的自减值和y在for语句的第三个表达式中得到的i自增变化后的值。

3.以下程序的输出结果是( )A、2 0B、3 1C、3 2 1D、2 1 0main( ){ int n=4;while(n--) printf("%d ",--n);}答案:A4.以下程序的输出结果是( )A、#*#*#B、#####C、*****D、*#*#*main( ){ int i;for(i=1;i<6;i++){ if(i%2) {printf("#");continue;}printf("*");}printf("\n");}答案:A注解:循环控制变量i的值从1变化到5,i为1、3、5时,i%2为1,if语句的条件为真,则执行if后的子句,输出#,然后执行continue语句,终止本次循环的执行,进入下一轮循环,i为2、4时,i%2为0,if语句的条件为假,则if后的子句并不执行,直接输出*,所以最后的输出为#*#*#。

5.以下程序的输出结果是( )A、编译不通过,无输出B、acegC、acegiD、abcdefghimain( ){ int i;for(i='A';i<'I';i++,i++) printf("%c",i+32);printf(" \n");}答案:B注解:循环控制变量i的取值为A、C、E、G,将它们转化为小写字母的格式输出。

vb考试复习5章-6章习题

vb考试复习5章-6章习题

计第5章选择结构程序设-、选择题1.下列语句正确的是【】。

(多选)(A)IfX≠YThenPrint"X不等于Y"(B)IfX<>YThenPrint"X不等于Y"(C)IfX><YThenPrint"X不等于Y"(D)IfX=YPrint"X不等于Y"2.下列语句正确的是【】。

(A)IfA≥BThenT=AA=BB=T(B)IfA≥BThenT=A;A=B;B=T(C)IfA>=BThenT=AA=BB=T(D)IfA>=BThenT=A:A=B:B=T3.下列语句正确的是【】。

(A)IfX<3*YAndX>YThenY=X^3(B)IfX<3*YAndX>YThenY=X3(C)IfX<3*Y:X>YThenY=X^3(D)IfX<3*YAndX>YThenY=X**34.关于语句Ifx=lTheny=1,下列说法正确的是【】。

(A)x=1和y=1均为赋值语句(B)x=1和y=1均为关系表达式(C)x=1为关系表达式,y=1为赋值语句(D)x=1为赋值语句,y=1为关系表达式5.执行以下语句后显示结果为【】。

DimxAsIntegerIfxThenPrintxElsePrintx-1(A)1(B)O(C)一1(D)不确定6.如果X的值小于或等于Y的平方,则打印"OK",表示这个条件的单行格式If语句是【】。

(A)Ifx<=y2ThenPrint"OK"(B)Ifx<=y^2Print"OK"(C)Ifx<=y^2Then"OK"(D)Ifx<=y^2ThenPrint"OK"7.如果A为整数且|A|=100,则打印"OK",否则打印"Error",表示这个条件的单行格式If语句是【】。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章循环结构程序设计一.选择题1.21.运行以下程序后,如果从键盘上输入65 14 <回车>,则输出结果为()。

#include<stdio.h>void main(){int m,n;printf("enter m,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n) m-=n;while(n>m) n-=m;}printf("m=%d\n",m);}A) m=3 B) m=2 C) m=1 D) m=02.以下程序段的输出结果是()。

int i,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m++;A. 12B. 15C. 20D. 253.printf("%d\n",m);设有程序段:int k=10;while(k=0)k=k-1;则下面描述正确的是()A. while循环体执行了10次B. 循环是无限循环C. 循环体语句一次都不执行D. 循环体语句执行一次4.以下正确的描述是()A.Continue语句的作用是结束整个循环的执行B.只能在循环体内和switch语句体内使用break语句C.在循环体内使用break语句或者continue语句的作用相同D.从多层循环嵌套中退出时,只能使用goto语句5.下面程序段()for(t=1;t<=100;t++){scanf("%d",&x);if(x<0)continue;printf("%3d",x);}#include<stdio.h>void main(){int x=3;do{printf("%3d",x-=2);}while(!(--x));}A. 1B. 3 0C. 1 -2D. 死循环7.以下程序段的输出结果是()。

#include<stdio.h>void main(){int i,n=0;for(i=2;i<5;i++){do{if(i%3)continue;n++;}while(!i);n++;}printf("n=%d\n",n);}A. n=5B. n=2C. n=3D. n=48.若有如下程序段,其中s,a,b,c均已定义为整型变量,且a,c均已赋值(c大于0)s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是()A. s=a+bB. s=a+cC. s=s+cD. s=b+c9.以下程序段的输出结果是()。

#include<stdio.h>void main(){int a=1,b;for(b=1;b<=10;b++){if(a>=8) break;if(a%2==1) { a+=5;continue; }a-=3;}printf("%d\n",b);二.填空题:1.下面程序段是实现从键盘上输入的字符中统计数字字符的个数,用换行符结束循环,请填空。

#include<stdio.h>void main(){int n=0,c;c=getchar();while( ){if( )n++;c=getchar();}printf("n=%d\n",n);}2.下面程序的功能是计算1~10之间的奇数之和及偶数之和,请选择填空。

#include<stdio.h>void main(){int a,b,c,i;a=c=0;for(i=0;i<=10;i=i+2){a+=i;________________________;c=c+b;}printf("The sum of even=%d\n",a);printf("The sum of odd =%d\n",___________________);}三.分析程序写出正确输出结果(注意,在手写答案的时候如果有空格时必须把空格表示出来,用上课教过的符号~!)1.下面程序的运行结果为:#include<stdio.h>void main(){int i,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++;printf("x=%d\n",x);}2.下面程序的运行结果是:#include<stdio.h>void main(){int k=0;char c='A';do{switch(c++){case 'A':k++; break;case 'B':k--;case 'C':k+=2; break;case 'D':k=k%2; continue;case 'E':k=k*10; break;default :k=k/3;}k++;} while(c<'G');printf("k=%d \n", k);}3.下面程序的运行结果是:#include<stdio.h>void main(){int i,j,a=0;for(i=0;i<2;i++){for(j=0;j<4;j++){if(j%2)break;a++;}a++;}printf("%d\n",a);}4.下面程序的运行结果是:#include<stdio.h>void main(){int i;for(i=1;i<=5;i++)switch(i%5){case 0: printf("*");break;case 1: printf("#");break;default: printf("\n");case 2: printf("&");break;}}四.程序设计题:1.请输入两个整数,求两个数之间所有整数之和,例如:输入1,10,输出结果为:55。

请编写程序实现。

2.求fibonacci数列40个数。

这个数列有如下特点:第1,2两个数为1,1。

从第3个数开始,该数是其前面两个数之和。

(要求不能使用数组完成!)3.给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

4.输出所有“水仙花”数,所谓“水仙花”数是指一个3位数,其各位数字立方和等于该数本身。

例如:153就是一个水仙花数。

153=13+53+335.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

6.求s=1+12+123+1234+……+123…n的值,其中n是由键盘输入。

例如:输入输入n=5 s=1+12+123+1234+12345(此时共有5个数相加)。

7.请编写程序实现功能:从3个红球,5个白球,6个黑球中任意取出8个球,其中必须要有白球,请输出所有的方案。

8.请编写程序实现功能:统计0-9可以组成多少个没有重复的3位偶数。

9.输入两个正整数m和n,求其最大公约数和最小公倍数。

10.请编写程序实现功能:求1000之内的所有完全数。

(说明:一个数如果恰好等于它的因子之和(除自身外),则该数为完全数。

例如6=1+2+3,6为完全数)11.请编写程序实现功能:从键盘上输入6名学生的5门成绩,分别统计出每个学生的平均成绩和总成绩,并输出。

12.有一分数序列:2/1 ,3/2 ,5/3 ,8/5 ,13/8 ,21/13,……….求出这个序列的前20项之和。

(答案见书课后练习答案)13.两个羽毛球队进行比赛,各出3人。

甲队为A、B、C,3人,乙队为X、Y、Z,3人。

已抽签决定比赛名单。

有人向队员打听比赛的名单,A说他不和X比,C说他不和X、Z比,请编程序找出3对赛手的名单14.编写程序,打印出如下图案(菱形)*************************教材P128页例题6.1015.求1+2!+3!+...+20!的和。

相关文档
最新文档