循环练习题及答案
- 格式:docx
- 大小:16.05 KB
- 文档页数:9
循环章节练习题一、选择题1.设有程序段int k=10;while (k=0) k=k-1;则下面描述中正确的是_______.A. while循环执行10次。
B.循环是无限循环。
C.循环体语句一次也不执行。
D.循环体语句执行一次。
2.设有以下程序段:int x=0,s=0;while(!x!=0) s+=++x;printf(“%d”,s);则________。
A. 运行程序段后输出0。
B. 运行程序段后输出1。
C.程序段中的控制表达式是非法的。
D.程序段执行无限次。
3.下面程序段的运行结果是________。
x=y=0;while(x<15) {y++;x+=++y;}printf(“%d,%d”,y,x);A.20,7 B. 6,12C. 20,8D. 8,203.下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n 中的较大者,请选择填空。
#incldue <stdio.h>main(){ int m=0,n=0;char c;while( (___1____)!=’\n’){ if(c>=’A’&&’Z’) m++;if(c>=’a’&&’z’) n++;}printf(“%d\n”,m<n?___2____);}1)A.c=getchar() B.getchar()C.c=getcharD.scanf(“%c”,c);2)A. n:m B. m:n C. m:m D. n:n4.下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环,请选择填空。
#include <stdio.h> main(){ int a,max=0;scanf(“%d”,&a);while(_______){ if(max<a) max=a;scanf(“%d”,&a);}printf(“%d”,max); }A.a==0B.aC.!a=1D. !a5.下面程序的运行结果是______。
《循环经济与低碳经济》练习题及参考答案《循环经济与低碳经济》练习题及参考答案⼀、单项选择1、低碳经济的理论溯源可推⾄(B A 、⽣态经济论)C 、循环经济论)D 、管理学D 、绿⾊经济论B 、可持续发展论2、“可持续发展”概念最初起源于(A A 、⽣态学B 、社会学C 、经济学)3、“可持续发展”概念明确定义于(D A 、《环境状况报告》C 、《建设⼀个可持续发展的社会》 B 、联合国⽓候变化框架公约D 、《我们共同的未来》)1989 年出版的《绿⾊经济蓝⽪4、“绿⾊经济”的概念在英国经济学家(A 书》⾸次提出 A 、⽪尔斯B 、帕斯特C 、布伦特兰D 、格罗斯曼)以上属于节能产品。
D. 四级5、根据国家⽬前实⾏的“五级能效”标准,(B A. ⼀级6、(D A 、美国7、(B A 、美国8、(A 范例 A 、巴西B 、⽇本C 、法国D 、美国)B. ⼆级C. 三级)是最早提出“低碳”概念并积极倡导低碳经济的国家 B 、俄罗斯C 、德国B 、⽇本C 、法国D 、英国)是推动⽣物燃料业发展的先锋,也是当前⽣物燃料业发展较为成功的 9、欧盟对低碳技术的选择侧重点在(C A 、节能技术藏技术B 、碳排放降低技术C 、清洁能源技术D 、碳回收与储10、北欧各国得天独厚的林⽊和风能资源,是世界上最早利⽤(B A. 核能和风能热能和风能 11、(D)是农业低碳化最简易、最有效的途径B 、有机农业C 、退耕还林D 、植树造林B. ⽣物质能和风能C. 太阳能和风能)的地区。
D.地A 、节⽔农业12、(B )是建⽴低碳化发展体系的核⼼内容,是全社会循环经济发展的重点。
B 、⼯业低碳化C 、农业低碳化)。
D 、服务低碳化A 、能源低碳化13、我国明确提出“限制过度包装”的法律是(B A.《节约能源法》 C.《循环经济促进法》B.《固体废物污染环境防治法》 D.《清洁⽣产促进法》14、在低碳城市发展中,(C )作为先期设计后期引导的“城市版图”,是极其重要的⼀环。
循环小数练习题及答案有限小数:,无限小数:,循环小数:。
.7÷3的商用循环小数表示是,保留两位小数是2、写出下面各循环小数的近似值0.3333??≈ 13.67373??≈.534534??≈4.888??≈·· 0.3、0.323·· 、0.3·、从小到大排列下面各数:0.32、0.32、4、判断8.476476是循环小数。
两个数相除,除不尽时,商一定是循环小数。
循环小数都是无限小数。
一个数除以小数,商不一定小于被除数。
2.5÷0.4的商是6,余数是10。
一个自然数除以0.1,相当于将这个自然数扩大10倍4、计算下面各题,除不尽的用循环小数表示商1.3÷6=57÷32= 11.625÷9.3= 0.1÷33=1、在括号里填上适当的数。
0.56÷0.7=÷7= 0.56÷0.07=÷7=8.64÷3.6=÷36=8.64÷0.36=÷36=2、根据42.6÷1.2=35.5,直接写出下面各题的商。
4.26÷1.2=42.6÷12=426÷0.12=.26÷12=3、在○里填上“>”“<”或“=”。
12.01÷1.02○12.010.36÷0.36○0.3.48÷0.8○5.410.8÷5.4○10.89.72÷0.08○9.7 0.99÷1.1○0.99·· · · · · 0.45○0.450.6○0.6661.2727○1.2712.232○11.984、一个三位小数“四舍五入”到磁分位是5.40,这个三位小数最大是,最小是。
5、下面各题的商哪些大于1?哪些小于1?5.29÷683.25÷460.27÷2.24÷713.27÷190.03÷59.6÷1.08÷56、填表7、用竖式计算1.57÷3.9.3÷0.1 1.634÷4.335.1÷7.83.25×9.04=循环小数练习题答案1、填空。
循环练习题及答案练习题一:基础循环1. 编写一个程序,使用循环结构打印出1到10的数字。
2. 编写一个程序,使用循环结构打印出1到100之间所有3的倍数。
3. 编写一个程序,使用循环结构找出1到100之间所有偶数的和。
答案一:1. 程序代码:```pythonfor i in range(1, 11):print(i)```2. 程序代码:```pythonfor i in range(1, 101):if i % 3 == 0:print(i)```3. 程序代码:```pythonsum_even = 0for i in range(1, 101):if i % 2 == 0:sum_even += iprint("偶数之和:", sum_even)```练习题二:条件循环1. 编写一个程序,使用循环结构打印出1到50之间所有5的倍数,直到遇到第一个偶数为止。
2. 编写一个程序,使用循环结构计算并打印出1到100之间所有7的倍数的乘积。
答案二:1. 程序代码:```pythonfor i in range(1, 51):if i % 5 == 0:if i % 2 == 0:print(i)breakprint(i)```2. 程序代码:```pythonproduct = 1for i in range(1, 101):if i % 7 == 0:product *= iprint("7的倍数的乘积:", product)练习题三:嵌套循环1. 编写一个程序,使用嵌套循环打印出如下的三角形图案: ```11 21 2 3...1 2 3 (10)```2. 编写一个程序,使用嵌套循环打印出以下图案:```AB BC C C...Z Z Z ...```答案三:1. 程序代码:```pythonfor i in range(1, 11):for j in range(1, i + 1):print(j, end=' ')print()2. 程序代码:```pythonfor i in range(65, 91): # ASCII值 65 到 90 对应 A 到 Z for j in range(1, i - 64 + 1): # 减去64是因为ASCII 值A是65print(chr(i), end='')print()```结束语:通过上述练习题及答案,我们不仅复习了循环结构的基本概念,还学习了如何使用条件循环和嵌套循环来解决实际问题。
第三单元循环结构练习题选择题:1、有以下程序执行后的输出结果是( D )。
main( ){ int i,s=0; for(i=1;i<10;i+=2)s+=i+1;printf("%d\n",s);}A.自然数 1~9的累加和B.自然数 1~10 的累加和C.自然数 1~9中的奇数之和D.自然数 1~10 中的偶数之和2、以下关于 for 语句的说法不正确的是( A )。
A. for循环只能用于循环次数已经确定的情况B. for循环是先判断表达式,后执行循环体语句C. for循环中,可以用 break 跳出循环体D. for循环体语句中,可以保含多条语句,但要用花括号括起来3、若 i和 k 都是 int 类型变量,有以下 for语句for(i=0,k=-1;k=1;k++) printf("*****\n");下面关于语句执行情况的叙述中正确的是(d)。
A. 循环体执行两次B.循环体执行一次C.循环体一次也不执行D. 构成无限循环4、以下程序程序的执行后的输出结果是(c)。
main(){int i,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++) printf(“%d”,t[2 -i][i]);}A.753B.357C.369D.7515、以下程序运行后的输出结果是( A )。
void fun(char*s){ while(*s){ if(*s%2==0)printf(“%c”,*s);s++;}}main(){ char a[]={“good”};fun( a) ;printf(“ n”);}注意:字母 a 的 ASCⅡ码值为 97A.dB.goC.godD.good6、已知 int t=0 ; while ( t=1 ){...}则以下叙述正确的是( B)。
A)循环控制表达式的值为 0B)循环控制表达式的值为 1C)循环控制表达式不合法D)以上说法都不对7、设有以下程序段 Bint x=0,s=0;while (!x!=0 ) s+=++x;printf ( "%d",s );则A)运行程序段后输出0B)运行程序段后输出 1C)程序段中的控制表达式是非法的D)程序段执行无限次8、设 i ,j ,k 均为 int型变量,则执行完下面的 for 语句后, k 的值为( C)。
for循环练习题及答案一、选择题1. 下面哪个选项能正确输出数字1到5?A. for i in range(5):print(i)B. for i in range(1,6):print(i)C. for i in range(1,6):print(i, end=" ")D. for i in range(5):print(i+1)答案:B2. 下面哪个选项能正确输出数字10到1?A. for i in range(10, 1):print(i)B. for i in range(10, 0, -1):print(i)C. for i in range(1, 11, -1):print(i)D. for i in range(1, 10):print(i)答案:B3. 下面哪个选项能够计算1到10的和并输出?A. total = 0for i in range(1, 11):total += iprint(total)B. total = 0for i in range(10):total += iprint(total)C. total = 0for i in range(1, 11):total = iprint(total)D. total = 0for i in range(1, 11):total =+ iprint(total)答案:A二、填空题1. 使用for循环输出1到10的平方。
答案:for i in range(1, 11):print(i**2)2. 使用for循环计算并输出1到100的和。
答案:total = 0for i in range(1, 101):total += iprint(total)3. 使用for循环输出1到100中能被3整除的数字。
答案:for i in range(1, 101):if i % 3 == 0:print(i)三、编程题1. 使用for循环输出菱形图案。
1循环控制:2数组:3函数4宏定义5指针6文件1循环控制:(一)选择题1.设有程序段int k=10;while(k=0)k=k-1;这下面描述中正确的是_________.a)while循环执行10次 b)循环是无限循环c)循环体语句一次也不执行 d)循环体语句执行一次2.语句while(!E);中的表达式!E等价于________. a)E==0 b)E!=1 c)E!=0 d)E==1 3.下面程序段的运行结果是__________.int n=0;while(n++<=2);printf("%d",n);a)2 b)3 c)4 d)有语法错4.下面程序的运行结果是____.#include<stdio.h>main(){int num=0;while(num<=2){num++;printf("%d\n",num); } }a)1 b)1 c)1 d)12 2 23 345.以下程序段________.x=-1;do{x=x*x;}while(!x);a)是死循环 b)循环执行二次c)循环执行一次 d)有语法错误6.若有如下语句int x=3;do{printf(""%d\n",x-=2);}while(!(--x));则上面程序段______.a)输出的是1 b)输出的是1和-2 c)输出的是3和0 d)是死循环7.下面程序的运行结果是______.#include<stdio.h>main(){int y=10;do{y--;}while(--y);printf("%d\n",y--);}a)-1 b)1 c)8 d)08.若i为整型变量,则以下循环执行次数是_____.for(i=2;i==0;)printf("%d",i--);a)无限次b)0次 c)1次 d)2次9.执行语句for(i=1;i++<4; );后变量i的值是______.a)3 b)4 c)5 d)不定10.以下正确的描述是_______.a)continue语句的作用是结束整个循环的执行b)只能在循环体内和switch语句体内使用break语句c)在循环体内使用break语句或continue语句的作用相同d)从多层循环嵌套中退出时,只能使用goto语句(二)填空题1.下面程序段是从键盘输入的字符中统计字符的个数,用换行符结束循环。
一、选择题1、以下程序段的输出结果是( D )int k, j, s=0;for(k=2;k<6;k++,k++){s = 1;for(j=k;j<6;j++)s+=j;}System.out.print(s);A)9 B)1 C)11 D)102、以下程序段的输出是( C )int i, j, m=0;for(i=1;i<=15;i+=4){for(j=3;j<=19;j+=4)m++;}System.out.print(m);A)12 B)15 C)20 D)253、以下程序段的输出是( A )int i,sum=0;for(i=1;i<6;i++)sum+=i;System.out.print(sum);A)15 B)14 C)不确定D)04、以下程序段的输出是( D )int x=3,y=6,a=0;while(x++!=(y-=1)){a+=1;if(y<x)break;}System.out.print(“x=”+x+”,y=”+y+”,a=”+a);A)x=4,y=4,a=1 B)x=5,y=5,a=1 C)x=5,y=1,a=3 D)x=5,y=4,a=15、定义如下变量:int n = 10 ;则下列循环的输出结果是( B )while(n>7){n-- ;System.out.println(n) ;}A)10 B)9 C)10 D)99 8 9 88 7 8 77 66、以下程序段的输出是( C )int x=3;do{System.out.print(x-=2);}while(--x==0)A)1 B)3 0 C)1 -2 D)死循环7、以下程序段的输出是( B )int a,b;for(a=1,b=1;a<100;a++){if(b>=20) break;if(b%3==1){b+=3;continue;}b-=5;}System.out.print(a);A)7 B)8 C)9 D)108、以下程序段的输出是( C )int num=0;while(num<=2){num++;System.out.print(num);}A)1 B)2 2 C)1 2 3 D)1 2 3 49、以下循环体的执行次数是( C )int i,j ;for(i=0,j=1 ;i<=j+1 ;i+=2,j--)System.out.print(i) ;A)3 B)2 C)1 D)010、设j为int型变量,则下面for循环语句的执行结果是( B )for(j=10 ;j>3 ;j--){if(j%3 !=0)j-- ;--j ;--j ;System.out.print(j) ;}A)6 3 B)7 4 C)6 2 D)7 311、在循环for,while,do-while语句中,用于直接中断内层循环的语句是( C )A)switch B)continue C)break D)if二、填空题1、以下程序段的输出结果是_1024___int k, n, m;n = 10;m = 1;k = 1;while(k<=n){m = m*2;k++;}System.out.print(m);2、以下程序段的输出结果是_10___int x=2;while(x--!=0){System.out.print(x);}3、在循环中,continue语句与break语句的区别是:_continue语句是跳出本次循环,进入下一次循环;break语句是终止某个循环,程序跳转到循环块外的下一条语句。
1,任意输入一个整数(小于10位),求它的位数importpublic class BitNum {public static void main(String[] args){Scanner input = new Scanner(System.in);int count = 0;System.out.print("请输入一个整数(小于10位):");int num = input.nextInt();ifwhile(num != 0){count++;num /= 10;}System.out.println("它是个" + count + "位的数。
");}else{System.out.println("输入有误!");}}}2,本金10000元存入银行,年利率是千分之三,每过1年,将本金和利息相加作为新的本金。
计算5年后,获得的本金是多少?public class Principal {public static void main(String[]args){double money = 10000;for(int i = 0; i < 5; i++){money *= 1+0.003;}System.out.println("5年后,获得的本金是" +(int) money + "元。
");}}3,计算1000以内所有不能被7整除的整数之和。
public class NotDiviBySevenSum {public static void main(String[]args){int sum = 0;for (int i = 1; i < 1000; i++){ //1000以内的整数if (i % 7 != 0){ //对7取余sum += i; //余数不为0 则相加}}//所有不能被7整除的整数的和System.out.println("1000以内所有不能被7整除的整数之和为:" + sum);}}4,编写一个游戏级别评分器,循环录入每一局(共10局)的游戏得分,显示输出游戏级别。
importpublic class DigitalExchange {public static void main(String[] args){Scanner input = new Scanner(System.in);int count = 0;double score = 0;for (int i = 1; i <= 10; i++){System.out.print("请输入" + i + "局的游戏得分:");score = input.nextDouble();if(score >= 80){count++;}}if (count >= 9){System.out.println("一级");}else if (count >= 6){System.out.println("二级");}else{System.out.println("三级");}}}5,有个人想知道,一年之内一对兔子能繁殖多少对?于是就筑了一道围墙把一对兔子关在里面。
已知一对兔子每个月可以生一对小兔子,而一对兔子从出生后第3个月起每月生一对小兔子。
假如一年内没有发生死亡现象,那么,一对兔子一年内(12个月)能繁殖成多少对?分析:兔子的规律为数列,1,1,2,3,5,8,13,21public class Fobonacci1 {public static void main(String[]args){int f1 = 1;int f2 = 1;int sum = 0;for(int i = 3; i <= 12; i++){sum = f1 + f2;f1 = f2;f2 = sum;}System.out.println("一对兔子一年内(12个月)能繁殖成" + sum + "对。
");}}6,斐波那契数列的第1和第2个数分别为1和1,从第三个数开始,每个数等于其前两个数之和(1,1,2,3,5,8,13….).编写一个程序输出斐波那契数列中的前20个数,要求每行输出5个数。
public class Fobonacci2 {public static void main(String[]args){int f1 = 1;int f2 = 1;System.out.println("斐波那契数列中的前20个数为:");System.out.print(f1 + "\t" + f2 + "\t");for(int i = 3; i <= 20; i++){int f3 = f1 + f2;f1 = f2;f2 = f3;System.out.print(f3 + "\t");if(i % 5 == 0){System.out.println();}}}}7,计算出1—100之间所有不能被3整除的整数的和大于(或等于)2000的数字。
public class ForAnInteger {public static void main(String[]args){int item = 0;for(int i = 1; i <= 100; i++){if(i % 3 ==0){continue;}item += i;if(item >= 2000){System.out.println("那个数是:" + i);break;}}}}8,求s=a+aa+aaa+aaaa+….+aa...a的值,其中a是一个数字。
例如2+22+222+2222,a的值和加数个数n均从键盘获取。
importpublic class Test8 {public static void main(String[] args) {Scanner input = new Scanner(System.in);long a , b = 0, sum = 0;System.out.print("输入数字a的值: ");a = input.nextLong();System.out.print("输入相加的项数:");int n = input.nextInt();for(int i = 0; i < n; i++) {b = b + a;sum = sum + b;a = a * 10;System.out.print(b);if(i != n - 1){System.out.print(" + ");}else{System.out.print(" = ");}}System.out.println(sum);}}9,编写一个程序,最多接受10个数字,并求出其中所有正数的和,用户可以通过输入999终止程序,统计用户输入的正数的个数,并显示这些正数的和。
(提示;continue)importpublic class Test8 {public static void main(String[] args) {Scanner input = new Scanner(System.in);int count = 0; //正数个数int sum = 0; //正数的和int num = 0; //输入的数字int i = 0;do {System.out.print("请输入第" + (i + 1) + "个数:");num = input.nextInt();if (num > 0 && num != 999) {count++;sum += num;}i++;}while (i < 10 && num != 999);System.out.println("你输入的数字中正数个数为:" + count + ",正数的和为:" + sum);}}10.使用do-while循环:输出询问“我爱你,嫁给我吧?”,选择“你喜欢我吗?(y/n):",如果输入为y则打印”我们形影不离“,若输入为n,则继续询问importpublic class LoveChoice {public static void main(String[] args) {Scanner input = new Scanner(System.in);String choice = "";do {System.out.println("我爱你,嫁给我吧?");System.out.print("你喜欢我吗?(y/n):");choice = input.next();if(choice.equals("y")){System.out.println("我们形影不离");}}while (!choice.equals("y"));}}11, 具有4行等腰三角形(用循环来做)****************public class AnIsoscelesTriangle {public static void main(String[] args){for(int i = 1; i <= 4; i++){for(int j = 1; j <= 4 - i; j++){System.out.print(" ");}for(int k = 1; k <= 2 * i - 1; k++){System.out.print("*");}System.out.println();}}}12, ,从控制台接收两个数字,利用变量将这两个数字进行互换,并输出.importpublic class DigitalExchange {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.print("请输入第1个数a:");int a = input.nextInt();System.out.print("请输入第2个数b:");int b = input.nextInt();System.out.println("交换前,a = " + a + ",b = " + b);int temp = a;a = b;b = temp;System.out.println("交换后,a = " + a + ",b = " + b);}}13, 实现一个数字加密器,加密规则是:加密结果 = (整数*10+5)/2 + 3.14159 加密结果仍为一整数(数字从控制台输入)importpublic class DigitalEncryption {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.print("请输入您要加密的数:");int num = input.nextInt();System.out.println("加密前:" + num);int encryption = (int)((num * 10 + 5) / 2 + 3.14159);System.out.println("加密后:" + encryption);}}14, 从控制台输入一个正整数,并进行反转。