c语言习题册及答案

上传人:文*** 文档编号:52098117 上传时间:2022-02-07 格式:DOCX 页数:71 大小:255.83KB
收藏 版权申诉 举报 下载
c语言习题册及答案_第1页
第1页 / 共71页
c语言习题册及答案_第2页
第2页 / 共71页
c语言习题册及答案_第3页
第3页 / 共71页
资源描述:

《c语言习题册及答案》由会员分享,可在线阅读,更多相关《c语言习题册及答案(71页珍藏版)》请在装配图网上搜索。

1、第3章课后练习及作业习题指导(参考答案)作业01C语言基础知识一、选择题1 .C语言程序的基本单位是()。A)函数B)过程C)子程序D)子例程2 .下列个选项中,合法的C语言关键字是()。A)integerB)sinC)stringD)void3 .下列选项中,不是C语言提供的合法关键字的是()。A)switchB)cherC)defaultD)case4 .以下选项中合法的用户标识符是()。A)intB)a#C)5memD)_2435 .C语言程序一行写不下时,应该()。A)用回车换行B)在任意空格处换行C)用分号换行D)用逗号换行6 .在C程序中,可以作为用户标识符的一组标识符是()。A)

2、voiddefineWORDB)as_b3_224ElseC)switchwercaseD)4bDOSIG7 .在C语言中,下列合法的字符常量是()。A)039B)x76C)abD)o8 .以下说法正确的是()。A)C语言程序是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序是从main()函数开始执行的D)C语言程序中的main()函数必须放在程序的开始部分9 .()是构成C语言程序的基本单位A)函数B)变量C)子程序D)语句10 .一个C语言程序总是从()开始执行的A)主过程B)主函数C)子程序D)主程序11 .以下叙述不正确的是()A)

3、一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main()函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面12 .C语言规定:在一个源程序中,main()函数的位置()A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后13 .以下叙述正确的是()A)在C程序中,main()函数必须位于程序的最前面B)C程序中的每行中只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误14 .C语言中标识符只能由字母、数字和下划线3种字符组成,且第一个字符()A必须为字母B)必须为下划线C)

4、必须为字母或下划线D)可以是字母、数字和下划线中任意一种字符二、填空题1 .一个C语言编写的程序是从main函数开始执行的。2 .结构化程序所规定的3种基本控制结构是顺序结构、选择结构和循环结构3 .C语言的标识符可分为保留字、用户定义标识符和预定义标识符3类。4 .在C语言中,整数可用十进制、八进制和十六进制三种。5 .一个C语言程序的开发过程包括:编辑、编译、连接和运行4步。6 .一个C源程序中至少应包括一个main函数。7 .在一个C源程序中,注释部分两侧分界符分别为/*和*/。8 .C语言中的标识符只能由3种字符组成,它们是字母、数字和下划线。9 .C程序执行过程生成的3种文件及扩展名

5、为.c、.obj和.exe。作业02数据类型及运算、选择题1 . c语言中简单数据类型有(A )整型、实型、逻辑型 BC)整型、实型、字符型 D2 .以下选项中正确的整型常量是(A) -37 B ) 32,758 C)。)整型、字符型、逻辑型)整型、实型、字符型、逻辑型)。)3 2 6 D )6.10 以下选项中合法的C语言字符常量是()。A)tB)AC)67D)A11 以下选项中不正确的实型常量是()。A) 123 B ) 1e45.不合法的十六进制数是(C ) 3.640E-1 D ) 0.35)。A)0xffB)0X11C)0x1gD)0Xabc6 .以下选项中合法的C语言赋值语句是()

6、。A)a=b=34B)a=34,b=34C)-iD)m=(int)(x+y);7 .在C语言中,char型数据在内存中是以()形式储存的。A)原码B)补码C)ASCII码D)反码8.以下(A)是不正确的转义字符C)020D ) 09 .若有代数式3ae/bc,则不正确的C语言表达式是()。A)a/b/c*e*3B)3*a*e/b/cC)3*a*e/b*cD)a*e/c/b*310 .在C语言中,要求参加运算的数必须是整数的运算符是()。A)%B)/C)!D)*11 .若已定义x和y为double类型,则表达式“x=1,y=x+3/2“的值是()。A)1B)2C)2.0D)2.512 .若变量已

7、正确定义并赋值,符合C语言语法的表达式是()。A)a=a+1B)a=7+b+c,a+C)int(12.3/4)D)a=a+7=c+b13 .若a为整型变量,则下列语句()。a=-2L;printf(“%dn”,a);A)赋值不合法B)输出值为-2C)输出值不为确定值D)输出值为214 .对于条件表达式(M)?(a+):(a-),其中表达式M等价于()。A)M=0B)M=-1C)M!=0D)M!=115 .若有定义:intx=3,y=2;floata=2.5,b=3.5;则下面表达式的值为()。(x+y)%2+(int)a/(int)bA)1.0B)1C)2.0D)216 .若x和n均是int型

8、变量,且x初值为12,n初值为5,则执行下面表达式后x值为()。x%=(n%=2)A)0B)1C)2D)317 .假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为()。A)7B)8C)9D)1018 .设intx=1,y=1;表达式(!x|y-)的值是()。A)0B)1C)2D)-119 .若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是()。A)1B)2C)2.0D)2.520 .若变量a,i已正确定义,且i已正确赋值,则合法的语句是()。A)i=int(a)B)+i;C)a=a+=5D)a=int(i)21 .若执行以下程序段后,c3的值是(

9、)。intc1=1,c2=2,c3;c3=1.0/c2*c1;A)0B)0.5C)1D)222 .能正确表示逻辑关系”a10或aw0”的C语言表达式是()。A)a=10ora=0|a=10&a=10|ab)&(n=cd)运算后,n的值为()。A)0B)1C)2D)326 .假定w、x、v、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(wx)?w:x;m=(my)?m:y;m=(mb后,变量a的值为()。A)0B)1C)4D)530 .判断char类型数据cl是否为大写字母的最简单且正确的表达式为()。A)A=c1=A)&(c1=Z)C)(A=c1)D)(c1=A)

10、&(c1=Z)二、填空题1 .若a是int型变量,则执行表达式a=25/3%3后a的值是2。2 .若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n+后x的值为10,n的值为6q3 .若x和y都是double型变量,且x初值为3.0,y初值为2.0,则表达式pow(y,fabs(x)的值为8.0。4 .表达式pow(2.8,sqrt(double(x)值的数据类型为double。5 .若a是int型变量,则表达式(a=4*5,a*2),a+6的值为26。6 .若有定义intm=5,y=2;则执行表达式y+=y-=m*=y后y的值为-16。7 .已知inta=15,b=240;

11、则表达式(a&b)&b|b的结果为1。8 .表达式8.0*(1/2)的值为0.0。9 .字符串“abx79”的长度为5。10 .若s是int型变量,且s=6,则s%2+(s+1)%2表达式的值为1。11 .若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为6,b值为4,c值为2。12 .若有定义:charc=010;则变量c中包含的字符个数为。13 .若i为int整形变量且赋值为6,则运算i+后表达式的值为6变量i的值是14 .若二进制a是00101101,若想通过异或运算aAb使a的高4位取反,低4位不变,则二进制b是1111制00。15 .表达式3&4的值为0,

12、表达式3|4的值为7,表达式3&4的值为三、读程序写结果1 .如下程序的运行结果是(33)。#includevoidmain()inty=3,x=3,z=1;printf(%d%dn”,(+x,y+),z+2);2 .以下程序的输出结果是(6)。#includevoidmain()inta=5,b=4,c=6,d;printf(%dn,d=ab?(ac?a:c):(b);3 .在C语言中,如果下面的变量都是int类型,则输出的结果是(7)。sum=pad=5;pad=sum+,pad+,+pad;printf(“dn”,pad);4 .以下程序的输出结果是(9,10)。#includevoid

13、main()inti=010,j=10;printf(%d,%dn”,+i,j-);作业03基本语句一、选择题1. 若有说明:doublea;则正确输入语句是()。A)scanf(%if,a)B)scanf(%lf”,&a)C)scanf(%if,&a)D)scanf(%lo”,&a)2. 合法的C语言赋值语句是()。Aa=b=58B)k=int(a+b)C)a=58,b=58D)-i;3. 若变量已确定定义,以下程序段输出结果是()。x=5.16894;printf(%fn,(int)(x*1000+0.5)/(float)(1000)”);A)输出格式说明与输出项不匹配,输出无定值B)5.

14、170000C)5.168000D)5.1690004. 若有以下程序其输出结果是()。inta=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%dn”,a,b,c);A)3,0,-10B)0,0,5C)-10,3-10D)3,0,35. 以下程序其输出结果是()。#includevoidmain()inta=2,b=5;printf(“a=%d,b=%dn”,a,b);A)a=%2,d=%5B)a=2,b=5C)a=%d,b=%5D)a=%d,b=%d6. 以下程序段输出结果是()。floata=3.1415;printf(“|%6.0fn”,a,

15、b);A)|3.1415|B)|3.0|C)|3|D)|3.|7. 以下程序段输出结果是()。floata=57.666;printf(“*%010.2f*n”,a);C) *00000 . 57.67* D) *57.57*A)*0000057.66B)*57.66*8. 若变量c定义为float型,当从终端输入283.1900后按回车,能给变量c赋以283.19的输入语句是()。A)scanf(“%f”,c);B)scanf(“%8.4f”,&c);C)scanf( “ %d” ,&c)D)scanf( “ %8f” ,&c);9. 若有以下定义语句,则输出结果是()。intu=010,v

16、=0x10,w=10;printf(“%d,%d,%dn”,u,v,w);A)8,16,10B)10,10,10C)8,8,10D)8,10,1010. 下面程序的输出是()。#includevoidmain()intk=11;printf(“%d,%o,%xn”,k,k,k);A)12,11,11B)11,13,13C)11,013,0xbD)11,13,b11. 下面程序的输出结果是()。#includemain()intx=5,y=3;printf(“%dn”,y=x/y);A)0B)1C)3D)不确定的值12. 若变量已正确定义,下面程序段的输出结果是()。/与3类似x=5.23879

17、4;printf(“%fn”,(int)(x*1000+0.5)/(float)1000);A)5.239000B)输出格式说明与输出项不匹配,输出无定值C)5.238000D)5.2413. 下面语句的输出结果是(print(|%8.5f|n,3461.45);A)|61.45000|B)|3461.450|14. 执行下面程序中的输出语句后,#include void main() int a;printf(%dn,(a=3*5,a*4,a+5); )。C) |3461.45000|D)|3461.4500|a 的值是( ) 。A)65B)20C)15D)1015. 以下程序不用第三个变量

18、,实现将两个数进行对调的操作,请填空()。#includemain()inta,b;scanf(%d%d,&a,&b);printf(a=%db=%d,a,b);a=a+b;b=a-b;a=;printf(a=%db=%dn,a,b);A)a=bB)a-bC)b*aD)a/b16. 以下程序的输出结果是()。#includevoidmain()intm=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf(%fn,x);A)27.000000B)27.500000C)28.000000D)28.50000017. 若变量都已正确说明,则以下程序段输出

19、结果是()。a=2;b=3;printf(“ab?*a=%d;#b=%d”,a,b);?A)没有正确的输出格式控制B)输出为:*a=2C)输出为:#b=2D)输出为:*a=2#b=218. 若已定义inta=256;,执行语句printf(%x,a);的结果是()。A)100B)256C)ffeD)ff19. 执行下列程序时输入1234567,程序的运行结果为()。#includevoidmain()intx,y;scanf(%2d%2d,&x,&y);printf(%dn,x+y);A)17B)46C)15D)920. 已知inta,;intb;floatc;doubled;,则表达式a*b

20、=c-d结果为()型。??A)DoubleB)intC)floatD)char21. 已知inta,b;,用语句scanf(%d%d,&a,&b);输入a,b的值时,不能作为输入数据分隔符的是()。A),B)空格C)回车D)Tab键22. 语句printf(%d,(a=2)&(b=-2);的输出结果是()。A)无输出B)结果不确定C)-1D)123. 下述程序的输出结果是()。#includevoidmain()printf(%f,2.5+1*7%2/4);A)2.50000B)2.750000C)3.375000D)3.000000二、填空题1.变量i、j、k已定义为int类型并有初值0,用

21、以下语句进行输入:scanf(%d,&j);scanf(%d,&k);当执行以上输入语句,从键盘输入(弋表回车键):12.3则变量i、j、k的值分别是0,12,0。2 .复合语句在语法上被认为是一条语句,空语句的形式是;。3 .C语句句尾用;结束。4 .运行如下程序:#includevoidmain()inta,b,c;scanf(%d,%d,%d,&a,&b,&c);printf(%d,%d,%d,a,b,c);运行时,输入3、4、5,输出的值为3,4,5。5 .字符常量使用一对_二界定单个字符,而字符串常量使用一对来界定若干个字符的序列。6 .设x=2.5,a=7,y=4.7,贝Ux+a%

22、3*(int)(x+y)%2/4为2.5。7 .自增运算符(+)或自减运算符(-)只能用于变量.不能用于常量或表达式。8 .表达式5%(-3)的值是2,表达式-5%(-3)的值是-2。三、读程序写结果-200,25i=-200,j=25 i=-200j=251 .下列程序的输出结果是()。#includevoidmain()inti=-200,j=25;printf(%d,%d,i,j);printf(i=%d,j=%dn,i,j);printf(i=%dnj=%dn,i,j);2 .使用强制转换方法将正整数转换成字符。本程序的执行结果是()。#includevoid main() char

23、c;int i;printf(输入一个正整数(小于 255):”);scanf(%d,&i);c=(char)i;printf(%c 的 ASCII 码为 dn,c,i); 3.下列程序的输出结果是(560分钟9小时#includeD: *C : Document s and S窜入一个正整数(小于2E5:):批的懦GII胡为?820分钟 )。voidmain()inti=560,h,m;h=i/60;m=i-60*h;printf(%d分钟%d小时d分钟n,i,h,m);4 .下列程序的输出结果是(*3.140000,3.142*#includevoidmain()printf(*%f,%4

24、.3f*n,3.14,3.1415);)。*d(1)=-2*d(2)= -2*d(3)=-2 *d(4)=fffffffe*d(5)=fffffffe*d(6)=fffffffe5 .已有定义intd=-2;执行以下语句后的输出结果是(printf(*d(1)=%d*d(2)=%3d*d(3)=%-3d*n,d,d,d);printf(*d(4)=%x*d(5)=%6x*d(6)=%-6x*n,d,d,d);*%号之间加上一个星号,他的作用是(跳30 40 回车(此处 代表空格),6 .在scanf()函数调用语言,可以在格式字符和过对应的输入数据);当输入以下数据时:1020卜面语句的执行结

25、果是(103040)。inta1,a2,a3;scanf(%d%*d%d%d,&a1,&a2,&a3);printf(%d%d%d,a1,a2,a3);7 .执行以下程序时,若从第一列开始输入数据,为使变量a=3,b=7,x=8.5,y=71.82,c1=A,c2=a正确的数据输入形式是()。#includevoidmain()inta,b;floatx,y;charc1,c2;a=3b=7 x=8.5y=71.82 c1=A,c2=ascanf(a=%db=%d,&a,&b);scanf(x=%fy=%f,&a,&b);scanf(c1=%cc2=%c,&c1,&c2);printf(a=%

26、d,b=%d,x=%f,y=%f,c1=%c,c2=%c,a,b,x,y,c1,c2);四、程序填空1、给定程序的功能是:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为:Sr2,在程序中定义的变量名要与公式的变量相同)。例如:输入圆的半径值:19.527,输出为:s=598.949991。注意:部分源程序给出如下。试题程序:#includevoidmain()doublex;printf(Enterx:);scanf(%lf,【1】);&xprintf(s=%lfn,3.14159*【2】/2.0);x*x五、编程题1 .请编写程序其功能是:将两个两位

27、的正整数a、b合并成一个整数放在c中。合并方式是:将暇的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的个位和百位上。例如:当a=45,b=12,调用该函数后,c=5241。2 .假设m一个三位数,则输出将m勺个位,十位,百位反序而成的三位数(例如:123反序为321。作业04选择结构一、选择题1. 下面的程序()。#includevoidmain()intx=3,y=0,z=0;if(x=y+z)printf(*);elseprintf(#);A)有语法错误不能通过编译B)输出*C)可以通过编译,但是不能通过连接,因而不能运行D)输出#2. 两次运行下面的程序,如果从

28、键盘上分别输入6和4,则输出结果是()#includevoidmain()intx;scanf(%d,&x);if(x+5)printf(%d,x);elseprintf(%dn,x-);A)7和5B)6和3C)7和4D)6和43. 以下程序的输出结果是()。#includevoidmain()inta=-1,b=4,k;k=(+a0)&!(b-10或aw0的关系表达式是()。A)a=10ora=10|a=10&a=10|a=05. 假定所有变量以正确说明,下列程序段运行后x的值是()。a=b=c=0;x=35;if(!a)x-;elseif(b);if(c)x=3;elsex=4;A)34B

29、)4C)35D)36. 表示关系XYWZ的c语言表达式为()。A)(X=Y)&(Y=Z)B)(X=Y)AND(Y=Z)C)(X=Y=Z)D)(X=Y)&(Y=Z)7. 如下程序的输出结果是()。#includevoidmain()inta,b,c=246;a=c/100%9;b=(-1)&(-1);printf(%d,%dn,a,b);A)2,1B)3,2C)4,3D)2,-18. 当a=1、b=2、c=5、d=5时,执行下面的程序后,x的值是()if(ab)if(cd)x=1;elseif(ac)if(b=0|b=0 ) & (a0|b0 ) & (a+b=0&b=0) & (a0&b010

30、. 若a、b、cl、c2、x、y、均是整型变量,正确的switch语句是()B) switch(a +b)A)switch(a+b); case 1:case 0:C) switch a case c1 case c2y =a +b;break;y =a -b;break;case 3y =a -b;break;x =a *b;break;default: x =a +b; case 3case 1D) defaultcase 3case 10: y =a +b;break;:y =b - a, break; switch(a - b): y =a *b;break;: case 4 : x=

31、a +b;break;: case 11 : y =a -b;break; A) B) C) D)12. 设有说明语句“ int a =1,b=0?;,11.下列关于switch语句和break语句的结论中,正确的是()break语句是switch语句中的一部分在switch语句中可以根据需要使用或不使用break语句switch语句中必须使用break语句break语句只能用于switch语句中) ;break;) ;break; ;break; B) * * 0 * * * * 2 * *D)有语法错误switch(a)case1:switch(b)case0:printfcase1:pr

32、intfcase2:printfA)C)13.为了避免在嵌套的条件语句ifelse中产生二义性,C语言规定:else子句总是与()配对。A)缩排位置相同的ifC)其之后最近的if14 .有定义语句:于3的是()Aif(ca)x=1;elseif(ba)x=2;elsex=3;C)if(a3)x=3;if(a2)x=2;if(a1)x=1;15 .有以下程序inta=1,b=2,c=3,x;elsex=1;DB)其之前最近的if)同一行上的if,则以下选项中各程序段执行后,x的值不等)if(a3)x=3;elseif(a2)x=2;)if(ab)x=b;if(bc)x=c;if(cbc)prin

33、tfb=4c=3,d=2;(%dn,d);elseif(c-1=d)=1);printf(%dn,d+1);elseprintf(%dn,d+2);执行后输出结果是A2()B)3C)4)编译时有错,无结果16.有一函数:y=1x0x=0,以下程序段中不能根据-1x0)y=1;elseif(x=0)y=0;elsey=-1;C)y=0;if(x=0)if(x0)y=1;elsey=-1;17.与y=(x0?1:x0)y=1;elseif(x0)y=1;)if(x=0)Aif(x0)y=1;elseif(x0)y=1;elseif(x=0)if)语句是()if(x)y=0;if(x0)y=1;if

34、(x0)y=1;elseif(x=0)y=0;elsey=-1;elsey=-1;18 .当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为()。if(ab)if(cd)x1;elseif(ac)if(bbB)ab0C)0aabvoidmain()ints,t,a,b;scanf(%d,%d,&a,&b);s=1;t=1;if(a0)s=s+1;if(ab)t=s+1;elseif(a=b)t=5;elset=2*s;printf(%dn,t);20.对下述程序,()是正确的判断#includevoidmain()intx,y;scanf(“%d,%d”,&x,&y);if(xy

35、)x=y;y=x;elsex+;y+;printf(“%d,%d”,x,y);A)语法错误,不能通过编译B)输入数据3和4,则输入4和5C)输入数据4和3,则输入3和4D)输入数据4和3,则输出4和4二、填空题1 .表示“整数x的绝对值大于5”时值为“真”的c语言表达式是x5|x-5。2 .以下程序的输出结果是0。#includevoidmain()inta=5,b=4,c=3,d;d=(abc);printf(%dn,d);3 .20x30或x-100的c语言表达式是20Vx&x30|x-100。4 .若inti=10;,则执行下列程序后,变量i的正确结果是13。switch(i)case9

36、:i+=1;case10:i+=1;case11:i+=1;default:i+=1;5 .以下程序的输出结果是2。#includevoidmain()intx=2,y=-1,z=2;if(xy)if(y0)z=0;elsez+=1;printf(%dn,z);6 .若运行时输入12,则以下程序的结果0。#includevoidmain()intx,y;scanf(%d,&x);y=x12?x+10:x-12;printf(%dn,y);7 .设x、y、z均为int型变量,请写出描述“x或y中至少有一个小于z”的表达式xz|yB&CA|AB的值是0三、读程序写结果1 .以下程序运行结果是(ye

37、s)。voidmain()inta=1,b=3,c=5;if(c =a +b) printf else printf(yesn,);(non ) ;2 .以下程序运行结果是(503)。voidmain()inta=4,b=3,c=5,t=0;if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;printf(%d%d%dn,a,b,c);3 .以下程序运行结果是(20,0)。voidmain()intx=10,y=20,t=0;if(x=y)t=x;x=y;y=t;printf(%d,%dn,x,y);4 .以下程序运行结果是(132)。voidmain()inti,m=0,

38、n=0,k=0;for(i=9;i=11;i+)switch(i%10)case0:m+;n+;break;case10:n+;break;default:k+;n+;printf(%d%d%dn,m,n,k);四、阅读下列程序,在处填入适当内容,使程序完整。1 .输入x、y两个整数,按先大后小的顺序输出x、v。#includevoidmain()intx,y,【1】;tscanf(%d%d,&x,&y);if(xy)t=x;【3】x=y;14y=t;printf(x=%d,y=%dn”,x,y);2 .输入一个三位数,按逆序输出各个位数#includevoidmain()intx,a,b,c

39、,y;scanf(%d,&x);a=【5;x%10b=【6】;x/10%10c=【7】;x/100y=a*100+b*10+c;printf(y=%dn”,y);3.输入百分制成绩,要求输出成绩的等级A,B,C,D,E。90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。#include“stdio.hvoidmain()floatscore;【11】;chargradeprintf(“请输入学生成绩:”);scanf(%f,&score);switch(【12)(int)(score/10)case10:case9:grade=A;break;case8:grad

40、e=B;break;case7:grade=C;break;case6:grade=D;break;case5:case4:case3:case2:case1:case0:grade=E;printf(成绩是%5.1f,相应的等级是gn”,score,grade);五、编程题1 .从键盘输入一个字符,如果该字符为小写字母,则转换为大写字母输出;如果该字符为大写字母,则转换为小写字母输出;如果为其它字符,则原样输出。2 .有一函数yx 2 x3 x.( 1 .( 11 .(写一程序,输入x,输出y值。3.征税的办法如下:收入在 800元以下(含x1 )1x10 )x 10 )800元)的不征税;

41、收入在800元以上,1200元以下者,超过800元的部分按5%勺税率征税;收入在1200元以上,2000元以下者,超过1200元的部分按8%勺税率征税;收入在2000元以上,2000元以上部分按20%勺税率征税,试编写按收入计算税费的程序。作业05循环结构、选择题1. 下列程序执行后的输出结果是()。voidmain()intk=5;while(-k)printf(“%d”,k-=3);printf(“n”);A)1B)2C)4D)死循环2. 有下列程序段:intn,t=1,s=0;scanf(“%d”,&n);dos=s+t;t=t-2;while(t!=n);为使此程序段不陷入死循环,从键

42、盘输入的数据应该是()。A)任意正奇数B)任意负偶数C)任意正偶数D)任意负奇数3. 若变量已经正确定义,有下列程序段输出结果是()i=0;doprintf(“%d,”,i);while(i+);printf(“%dn”,i);A)0,0B)0,1C)1,1D)程序进入无限循环4. 若如下不构成无限循环的语句或语句组是()。A)n=0;B)n=0;do+n;while(n=0);C) n=10;while(n);n-;n+=i;5. 设变量已经正确定义,则以下能正确计算A) f=0;for(i=1;i1;i+)f*=i;6. 下列程序的运行结果是()#include void main() i

43、nt i,j,m=55;for(i=1;i=3;i+)for(j=3;j=i;j+) m=m%j;printf( “ %d n” ,m); A) 0B) 1 C ) 2 Dwhile(1) n+;D) for(n=0,i=1;i+)f=n! 的程序段是()B) f=1;for(i=1;i=2;i-)f*=i;)37. 下列程序的运行结果是#includevoidmain()intx=8;for(;x0;x-)if(x%3)printf(“%d,”,x-);continue;printf(“%d,”,-x);A)7,4,2B)8,7,5,2C)9,7,6,4D)8,5,4,2,8. 下列程序执行

44、后的输出结果是()。voidmain()inti,j,x=0;for(i=0;i2;i+)x+;for(j=0;j=3;j+)if(j%2)continue;x+;x+;printf(“x=%dn”,x);A)x=4B)x=8C)x=6D)x=129. 下列程序的输出结果是()。voidmain()inta=1,b;for(b=1;b=8)break;if(a%2=1)a+=5;continue;a=3;printf(“%dn”,b);A)3B)4C)5D)610. 若有如下语句,则程序段()。intx=6;doprintf(“%dn”,x-=2);while(-x);A)输出的是1B)输出白

45、是4和1C)输出的是3和0D)是死循环11. 下面程序段的输出结果是()。a=1;b=2;c=2;while(abc)t=a;a=b;b=t;c-;printf(“%d,%d,%”d,a,b,c);A)1,2,0B)2,1,0C)1,2,1D)2,1,112. 下面程序的输出结果是()#includevoidmain()intx=10,y=10,i;for(i=0;x8;y=+i)printf(“%d%d”,x-,y);D) 10 10 9 1)。D) x!=0A)10192B)9876C)1099013. 在while(x)语句中的x与下面条件表达式等价的是(A)x=0B)x=1C)x!=1

46、14. 下面的for语句的循环次数为()for(x=1,y=0;(y!=123)&(x4);x+);A)是无限循环B)循环次数不定C)循环执行4次D)循环执行3次15. 执行下面程序片段的结果是()。intx=23;doprintf(“%d”,x-);while(!x);A打印出321B)打印出23C)不打印任何内容D)陷入死循环16. 以下程序执行结果是()。#includeinta=3;voidmain()ints=0;inta=5;s+=a+;s+=a+;printf(“%dn”,s);A)8B)10C)7D)1117. 以下循环体的执行次数是()。#includevoidmain()i

47、nti,j;for(i=0,j=1;i=j+1;i+=2,j-)printf(“%dn”,i);A)3B)2C)1D)018. 如下程序段的输出结果是()。#includevoidmain()intn=9;while(n6)n-;printf(“%d”,n);A)987B)876C)8765D)987619. 有以下程序段:intk=0;while(k=1)k+;while循环执行的次数是()。C )一次也不执行D )执行一次)。A)无限次B)有语法错误,不能执行20. 以下程序中,while循环的循环次数是(#includevoidmain()inti=0;while(i10)if(i1)c

48、ontinue;if(i=5)break;i+;A)1B)10C)6D)死循环,不能确定次数二、读程序写运行结果1. 以下程序的输出结果是(52)。#includevoidmain()inti=10,j=0;doj=j+i;i-;while(i2);printf(“%dn”,j);2. 以下程序的输出结果是(17)。#includevoidmain()intx=15;while(x10&x50)x+;if(x/3)x+;break;elsecontinue;printf(“%dn”,x);3. 有以下程序:#includevoidmain()charc;while(c=getchar()!=?

49、)putchar(-c);程序运行时,如果从键盘输入:Y?N?相车,则输出结果是(X)4. 下面程序的运行结果是(s=254)。#includevoidmain()inta,s,n,count;a=2;s=0;n=1;count=1;while(count=0);6. 下面程序段的运行结果是(*)。x=2;doprintf(“*”);x-;while(x);7. 下面程序的运行结果是(1,-2)。#includevoidmain()inty,a;y=2;a=1;while(y-!=-1)doa*=y;a+;while(y-);printf(“%d,%d”,a,y);8. 下面程序段的运行结果是

50、(8)。i=1;s=3;dos+=i+;if(s%7=0)continue;else+i;while(s15);printf(“%d”,i);9. 下列程序的输出结果是(2500)。#defineA100voidmain()inti=0,sum=0;doif(i=(i/2)*2)continue;sum+=i;while(+iA);printf(%dn,sum);10. 以下程序的输出结果是(29)#includevoidmain()intx=27;while(x20&x30)x+;if(x/3)x+;break;elsecontinue;printf(%dn,x);11. 下面程序的输出结果

51、是(32)voidmain()inti=0,a=0;while(i20)for(;)if(i%10)=0)break;elsei-;i+=11;a+=i;printf(%dn,a);三、阅读下列程序,在处填入适当内容,使程序完整。1-100之间的奇数之和与偶数之和,请填空。n” ,a);n,c-11); 100以内能被3整除且个位为6的所有整数,请填空。1.下面程序的功能是:计算#includevoidmain()inta,b,c,i;a=c=0;for(i=0;i=100;i+=2)a+=i;【1】b=i+1c+=b;printf(偶数之和printf(奇数之和2 .下面程序的功能是:输出#

52、includevoidmain()inti,j;for(i=0;【2;i+)i10j=i*10+6;j%3 !=0if(【3】)continue;printf(%d,j);3 .以下程序的功能是:从键盘上输入若干学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入,请填空。#includevoidmain()floatx,amax,amin;scanf(%f,&x);amax=x;amin=x;while(【4】)x=0 if(xamax) amax=x;if(【5】)amin=x;xaminscanf( %f ,& printf( 4.下列程序的功能是计算:void main() int t=0,s=0,i;for(i=1;i=5;i+)x);n” ,amax,amin);s=1 + 12+1

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!