《C语言程序设计》练习测试题及答案(共25页)_第1页
《C语言程序设计》练习测试题及答案(共25页)_第2页
《C语言程序设计》练习测试题及答案(共25页)_第3页
《C语言程序设计》练习测试题及答案(共25页)_第4页
《C语言程序设计》练习测试题及答案(共25页)_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、专科C语言程序设计练习测试题及答案一、选择题(下列各题有四个选项,只有一个答案是正确的,请选出正确选项)1.一个C程序的执行是从A。A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束2.以下叙述正确的是C。A) 在C程序中,main函数必须位于程序的最前面B) C程序的每行中只能写一条语句C) C语言本身没有输入输出语句D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误3.以下叙述不正确的是D。A) 一

2、个C源程序可由一个或多个函数组成B) 一个C源程序必须包含一个main函数C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面4.C语言规定:在一个源程序中,main函数的位置C。A) 必须在最开始B) 必须在系统调用的库函数的后面C) 可以任意D) 必须在最后5.一个C语言程序是由B。A) 一个主程序和若干子程序组成B) 函数组成C) 若干过程组成D)若干子程序组成6.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为A。A) charintlong int=floatdoubleB) char=intlong int=floatdoub

3、leC) charintlong int=float=doubleD) char=int=long int=floatdouble7.若x、i、j和k都是int型变量,则执行下面表达式后x的值为C。x=(i=4,j=16,k=32)A)4B)16C)32D)528.假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b)的值是B。A)7B)8C)6D)29.下列四组选项中,均不是C语言关键字的选项是A。A) defineIFtypeB) getccharprintfC) includescanfcaseD) whilego pow10.下列四个选项中,均是C语言关键字的选项是B。A) a

4、utoenumincludeB) switchtypedefcontinueC) signedunionscanfD) if structtype11.下面四个选项中,均不合法的用户标识符的选项是C。A) AP_0doB) floatla0_AC) b-agotointD) _123tempINT12.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符C。A) 必须为字母B) 必须为下划线C) 必须为字母或下划线D) 可以是字母、数字和下划线中任一种字符13.下面四个选项中,均是合法整型常量的选项是A。A) 160-0xffff011B) -0xcdf01a0xeC) -019

5、86,0120668D) -0x48a2e50x14.下面四个选项中,均是不合法的整型常量的选项是D。A) -0f1-0xffff0011B) -0Xcdf01712,456C) -0189995e2D) -0x48eg-06803f15.下面四个选项中,均是不合法的浮点数的选项是B。A) 1600.12e3B) 1232e4.2.e5C) -.18123e40.0D) -e3.2341e316.下面四个选项中,均是合法浮点数的选项是B。A) +1e+15e-9.403e2B) -.6012e-4-8e5C) 123e1.2e-.4+2e-1D) -e3.2345.e-017.下面四个选项中,

6、均是合法转义字符的选项是A。A) nB) 017”C) 018fxabD) 0101x1f18.下面四个选项中,均是不合法的转义字符的选项是B。A) ”xfB) 1011aC) 011fD) abc101 xlf19.下面正确的字符常量是C。A)“c”B) C) WD) 20.下面四个选项中,均是不正确的八进制数或十六进制数的选项是D。A) 0160x8f018B) 0abc0170xaC) 010-0x110x16D) 0a127ff-12321.下面四个选项中,均是正确的八进制数或十六进制数的选项是C。A) -100x8f-011B) 0abc-0170xcC) 0010-0x110xf1

7、D) 0a12-0x123-0xa22.下面四个选项中,均是正确的数值常量或字符常量的选项是D。A) 0.00f8.9e&B) “a”3.9E-2.51e1”C) 30110xFF000aD) +0110xabcd2e250.23.下面不正确的字符串常量是A。A)abcB)“1212”C)“0”D)“”24.对应以下各代数式中,若变量a和x均为double类型,则不正确的C语言表达式是C。代数式C语言表达式A) exp(x*x/2)/sqrt(2*3.14159)B) 1.0/2.0*(a*x+(a+x)/(4*a)C) sqrt(pow(sin(x*3.14159/180),2.5)D) x

8、*x-exp(5.0)25.若有代数式,则不正确的C语言表达式是C。A) a/b/c*e*3B) 3*a*e/b/cC) 3*a*e/b*cD) a*e/c/b*326.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是D。int a1,a2; char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,&c2);A)1020ABB)10 20 ABC)10 20 ABD)10 20AB27.已有程序段和输入数据的形式如下,程序中输入语句的正确形式应当为D。main()int

9、a; float f;printf(“nInput number:”);输入语句printf(“nf=%f,a=%dn”,f,a);Input number:4.5 2A) scanf(“%d,%f”,&a,&f);B) scanf(“%f,%d”,&f,&a);C) scanf(“%d%f”,&a,&f);D) scanf(“%f%d”,&f,&a);28.根据定义和数据的输入方式,输入语句的正确形式为B。已有定义:float f1,f2;数据的输入方式:4.523.5A) scanf(“%f,%f”,&f1,&f2);B) scanf(“%f%f”,&f1,&f2);C) scanf(“%

10、3.2f %2.1f”,&f1,&f2);D) scanf(“%3.2f%2.1f”,&f1,&f2);29.阅读以下程序,当输入数据的形式为25,13,10正确的输出结果为D。main()int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%dn”,x+y+z);A) x+y+z=48B) x+y+z=35C) x+z=35D) 不确定值30.阅读以下程序,若运行结果为如下形式,输入输出语句的正确内容是B。main()int x; float y;printf(“enter x,y:”);输入语句输出语句输入形式enter x,y:2 3.4输出

11、形式x+y=5.40A) scanf(“%d,%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);B) scanf(“%d%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);C) scanf(“%d%f”,&x,&y);printf(“nx+y=%6.1f”,x+y);D) scanf(“%d%3.1f”,&x,&y);printf(“nx+y=%4.2f”,x+y);31.以下说法正确的是D。A) 输入项可以为一实型常量,如scanf(“%f”,3.5);B) 只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d”);C) 当

12、输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f);D) 当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);32.根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确的形式应该为A。main()char ch1,ch2,ch3;输入语句printf(“%c%c%c”,ch1,ch2,ch3);输入形式:A B C输出形式:A BA) scanf(“%c%c%c”,&ch1,&ch2,&ch3);B) scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);C) scanf(“%c %c %c”,&ch1,&ch2,&c

13、h3);D) scanf(“%c%c”,&ch1,&ch2,&ch3);33.有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是D。A) 132B) 1,3,2C) a=1 b=3 c=2D) a=1,b=3,c=234.以下能正确地定义整型变量a,b和c并为其赋初值5的语句是A。A)int a=b=c=5;B)int a,b,c=5;C)a=5,b=5,c=5;D)a=b=c=5;35.已知ch是字符型变量,下面不正确的赋值语句是A。A)ch=a+b;B)ch=0;C)ch=7+9;D)ch=5+9

14、;36.逻辑运算符两侧运算对象的数据类型B。A) 只能是0或1B) 只能是0或非0正数C) 只能是整型或字符型数据D) 可以是任何类型的数据37.以下关于运算符优先顺序的描述中正确的是C。A) 关系运算符算术运算符赋值运算符逻辑与运算符B) 逻辑与运算符关系运算符算术运算符赋值运算符C) 赋值运算符逻辑与运算符关系运算符算术运算符D) 算术运算符关系运算符赋值运算符逻辑与运算符38.下列运算符中优先级最高的是B。A)=1)&(x=200)&(x=1)|(x=200)|(x=1)&(x=200)&(x=1)|(x=200)|(x=210)40.表示图中坐标轴上阴影部分的正确表达式是C。X a b

15、 cA) (x=b)&(x=c)B) (x=a)|(b=x=c)C) (x=b)&(x=c)D) (x=a)&(b=x=c)41.判断char型变量ch是否为大写字母的正确表达式是C。A)A=ch=A)&(ch=A)&(ch=Z)D)(A=ch)42.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是D。A) x&yB) x=yC) x|y+z&y-zD) !(x=y&chb)&(n=cd)后n的值为B。A)1B)2C)3D)446.设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是C。A)while循环执行10次B)循环是无限循环C

16、)循环体语句一次也不执行D)循环体语句执行一次47.设有以下程序段int x=0,s=0;while(!x!=0) s+=+x;printf(“%d”,s);则B。A)运行程序段后输出0B)运行程序段后输出1C)程序段中的控制表达式是非法的D)程序段执行无限次48.语句while(!E);中的表达式!E等价于A。A)E=0B)E!=1C)E!=0D)E=149.下面程序段的运行结果是A。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,150.下面程序段的

17、运行结果是D。x=y=0;while(x15) y+,x+=+y;printf(“%d,%d”,y,x);A)20,7B)6,12C)20,8D)8,2051.下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环,请选择填空。B#include main()int a,max=0;scanf(“%d”,&a);while(【1】)if(maxa) max=a;scanf(“%d”,&a);printf(“%d”,max);【1】 A)a=0B)aC)!a=1D)!a52.下面程序的运行结果是C。#include main()int num=0;while(num=2)num+;pri

18、ntf(“%dn”,num);A)1B)1C)1D)1 2 2 2 3 3 453.若运行以下程序时,从键盘输入2473,则下面程序的运行结果是A。#include main()int c;while(c=getchar()!=n)switch(c-2)case 0:case 1: putchar(c+4);case 2: putchar(c+4); break;case 3: putchar(c+3);default: putchar(c+2); break;printf(“n”);A)668977B)668966C)66778777D)668876654.C语言中while和do-whil

19、e循环的主要区别是A。A) do-while的循环体至少无条件执行一次B) while的循环控制条件比do-while的循环控制条件严格C) do-while允许从外部转到循环体内D) do-while的循环体不能是复合语句55.以下能正确计算12310的程序段是C。A)doi=1; s=1;B)doi=1; s=0;s=s*i; s=s*i; i+; i+; while(i=10); while(i=10);C)i=1; s=1;D)i=1; s=0; dos=s*i; dos=s*i; i+; i+; while(i=10); while(i=10);56.下面有关for循环的正确描述是D

20、。A) for循环只能用于循环次数已经确定的情况B) for循环是先执行循环体语句,后判断表达式C) 在for循环中,不能用break语句跳出循环体D) for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来57.对for(表达式1;表达式3)可理解为B。A)for(表达式1;0;表达式3)B)for(表达式1;1;表达式3)C)for(表达式1; 表达式1;表达式3)D)for(表达式1; 表达式3;表达式3)58.若i为整型变量,则以下循环执行次数是B。for(i=2;i=0;) printf(“%d”,i-);A)无限次B)0次C)1次D)2次59.以下for循环的执行次数是C

21、。for(x=0,y=0;(y=123)&(x+y;x=i+) i=xB) for(;x+=i);C) while(1) x+; D) for(i=10;i-) sum+=i;61.下面程序段的运行结果是C。for(y=1;y10;) y=(x=3*y,x+1),x-1);printf(“x=%d,y=%d”,x,y);A)x=27,y=27B)x=12,y=13C)x=15,y=14D)x=y=2762.下面程序段的运行结果是D。for(x=3;x100) break;B) for(;);C) int k=0;do +k; while(k=0);D) int s=36;while(s); -

22、s;64.执行语句for(i=1;i+4;);后变量i的值是C。A)3B)4C)5D)不定65.有一堆零件(100到200之间),如果分成4个零件一组的若干组,则多2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多5个零件。下面程序是求这堆零件总数,请选择填空。_D_#include main()int i;for(i=100;i200;i+)if(i-2)%4=0)if(!(i-3)%7)if(【1】)printf(“%d”,i);A)i%9=5B)i%9!=5C)(i-5)%9!=0D)i%9=566.在C语言中,引用数组元素时,其数组下标的数据类型允许是C。A)整型常量

23、B)整型表达式C)整型常量或整型表达式D)任何类型的表达式67.以下对一维整型数组a的正确说明是D。A)int a(10);B)int n=10,an;C)int n;D)#define SIZE 10 scanf(“%d”,&n); int aSIZE; int an;68.若有说明:int a10;则对a数组元素的正确引用是D。A)a10B)a3.5C)a(5)D)a10-1069.在C语言中,一维数组的定义方式为:类型说明符 数组名A;A)常量表达式B)整型表达式C)整型常量 或整型表达式D)整型常量70.以下能对一维数组a进行正确初始化的语句是C。A)int a10=(0,0,0,0,

24、0);B)int a10=;C)int a=0;D)int a10=10*1;71.以下对二维数组a的正确说明是C。A)int a3;B)float a(3,4);C)double a14;D)float a(3)(4);72.若有说明:int a34;则对a数组元素的正确引用是C。A)a24B)a1,3C)a1+10D)a(2)(1)73.若有说明:int a34;则对a数组元素的非法引用是D。A)a02*1B)a13C)a4-20D)a0474.以下能对二维数组a进行正确初始化的语句是B。A) int a2=1,0,1,5,2,3;B) int a3=1,2,3,4,5,6;C) int

25、a24=1,2,3,4,5,6;D) int a3=1,0,1,1,1;75.以下不能对二维数组a进行正确初始化的语句是C。A) int a23=0;B) int a3=1,2,0;C) int a23=1,2,3,4,5,6;D) int a3=1,2,3,4,5,6;76.若有说明:int a34=0;则下面正确的叙述是D。A) 只有元素a00可得到初值0B) 此说明语句不正确C) 数组a中各元素都可得到初值,但其值不一定为0D) 数组a中每个元素均可得到初值077.若有说明:int a4=0,0;则下面不正确的叙述是D。A) 数组a的每个元素都可得到初值0B) 二维数组a的第一维大小为1

26、C) 因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1D) 只有元素a00和a01可得到初值0,其余元素均得不到初值078.若有说明:int a34;则数组a中各元素B。A) 可在程序的运行阶段得到初值0B) 可在程序的编译阶段得到初值0C) 不能得到确定的初值D) 可在程序的编译或运行阶段得到初值079.以下各组选项中,均能正确定义二维实型数组a的选项是C。A)float a34;B)float a(3,4); float a4; float a34; float a3=1,0; float a=0;0;C)float a34;D)float a34; static f

27、loat a4=0,0; float a3; auto float a4=0,0,0; float a4;80.下面程序A(每行程序前面的数字表示行号)。1 main()2 3 float a3=3*0;4 int i;5 for(i=0;i3;i+) scanf(“%d”,&ai);6 for(i=1;i3;i+) a0=a0+ai;7 printf(“%dn”,a0);8 A)第3行有错误B)第7行有错误C)第5行有错误D)没有错误81.下面程序C(每行程序前面的数字表示行号)。1 main()2 3 float a10=0.0;4 int i;5 for(i=0;i3;i+) scanf

28、(“%d”,&ai);6 for(i=1;i10;i+) a0=a0+ai;7 printf(“%fn”,a0);8 A)没有错误B)第3行有错误C)第5行有错误D)第7行有错误82.下面程序中有错误的行是D(每行程序前面的数字表示行号)。1 main()2 3 float a3=1;4 int i;5 scanf(“%d”,&a);6 for(i=1;i3;i+) a0=a0+ai;7 printf(“a0=%dn”,a0);8 A)3B)6C)7D)583.下面程序D(每行程序前面的数字表示行号)。1 main()2 3 float a3=0;4 int i;5 for(i=0;i3;i+

29、) scanf(“%d”,&ai);6 for(i=1;i4;i+) a0=a0+ai;7 printf(“%dn”,a0);8 A)没有错误B)第3行有错误C)第5行有错误D)第6行有错误84.若二维数组a有m列,则计算任一元素aij在数组中位置的公式为D。(假设a00位于数组的第一个位置上。)A)i*m+jB)j*m+iC)i*m+j-1D)i*m+j+185.对以下说明语句的正确理解是B。int a10=6,7,8,9,10;A) 将5个初值依次赋给a1至a5B) 将5个初值依次赋给a0至a4C) 将5个初值依次赋给a6至a10D) 因为数组长度与初值的个数不相同,所以此语句不正确86.

30、以下不正确的定义语句是B。A) double x5=2.0,4.0,6.0,8.0,10.0;B) int y5=0,1,3,5,7,9;C) char c1=1,2,3,4,5;D) char c2=x10,xa,x8;87.若有说明:int a3=1,2,3,4,5,6,7;则a数组第一维的大小是B。A)2B)3C)4D)无确定值88.若二维数组a有m列,则在aij前的元素个数为B。A)j*m+iB)i*m+jC)i*m+j-1D)i*m+j+189.定义如下变量和数组:int k;int a33=1,2,3,4,5,6,7,8,9;则下面语句的输出结果是A。for(k=0;k3;k+)

31、printf(“%d”,ak2-k);A)3 5 7B)3 6 9C)1 5 9D)1 4 790.若有以下程序段: int a=4,0,2,3,1; i,j,t;for(i=1;i=0&taj) aj+1=aj; j-; aj+1=t; 则该程序段的功能是B。A) 对数组a进行插入排序(升序)B) 对数组a进行插入排序(降序)C) 对数组a进行选择排序(升序)D) 对数组a进行选择排序(降序)二、填空题1、在C语言中(以16位PC机为例),一个char型数据在内存中所占的字节数为【1】;一个int型数据在内存中所占的字节数为【2】。2、在C语言中(以16位PC机为例),一个float型数据在

32、内存中所占的字节数为【4】;一个double型数据在内存中所占的字节数为【8】。3、若有以下定义,则执行表达式y+=y-=m*=y后的y值是【-16】。int m=5,y=2;4、设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为【-32768 32767】。5、在C语言中的实型变量分为两种类型,它们是【单精度型(或:float)】和【双精度型(或:double)】。6、C语言所提供的基本数据类型包括:单精度型、双精度型、【整型】、【字符型】和【枚举类型】。7、若s是int型变量,且s=6,则下面表达式的值为【1】。s%2+(s+1)%28、若a是int型变量,则下面表

33、达式的值为【26】。(a=4*5,a*2),a+69、若x和a均是int型变量,则执行表达式(1)后的x值为【12】,执行表达式(2)后的x值为【4】。(1)x=(a=4,6*2)(2)x=a=4,6*210、若a、b和c均是int型变量,则执行下面表达式后,a值为【6】,b值为【4】,c值为【2】。a=(b=4)+(c=2)11、若a是int型变量,且a的初值为6,则执行下面表达式后a的值为【-60】。a+=a-=a*a12、若a是int型变量,则执行下面表达式后a的值为【2】。a=25/3%313、若x和n均是int型变量,且x和n的初值均为5,则执行下面表达式后x的值为【10】,n的值为

34、【6】。x+=n+14、若有定义:int b=7; float a=2.5,c=4.7;则下面表达式的值为【5.500000】。a+(int)(b/3*(int)(a+c)/2)%415、若有定义:int a=2,b=3; float x=3.5,y=2.5;则下面表达式的值为【3.500000】。(float)(a+b)/2+(int)x%(int)y16、以下程序的输出结果为i:dec=-4,oct=177774,hex=fffc,unsigned=65532。main()short i;i=-4;printf(“ni:dec=%d,oct=%o,hex=%x,unsigned=%un”,

35、i,i,i,i);17、以下程序的输出结果为*3.140000,3.142*。main()printf(“*%f,%4.3f*n”,3.14,3.1415);18、以下程序的输出结果为c:dec=120,oct=170,hex=78,ASCII=x。main()char c=x;printf(“c:dec=%d,oct=%o,hex=%x,ASCII=%cn”,c,c,c,c);19、已有定义int d=-2;执行以下语句后的输出结果是*d(1)=-2*d(2)=-2*d(3)=-2*d(4)=177776*d(5)=177776*d(6)=177776*。printf(“*d(1)=%d*d

36、(2)=%3d*d(3)=%-3d*n”,d,d,d);printf(“*d(4)=%o*d(5)=%7o*d(6)=%-7o*n”,d,d,d);20、已有定义int d=-2;执行以下语句后的输出结果是*d(1)=-2*d(2)=-2*d(3)=-2*d(4)=fffe*d(5)=fffe*d(6)=fffe*。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);21、已有定义float d1=3.5,d2=-3.5;执行以下语句后的输出结果是*d(1)=3.

37、50000e+00*d(2)=3.500e+00*d(3)=3.500e+00*d(4)=-3.50000e+00*d(5)=-3.50000e+00*d(6)=-3.5000e+00*。printf(“*d(1)=%e*d(2)=%.4e*d(3)=%10.4e*n”,d1,d1,d1);printf(“*d(4)=%e*d(5)=%.6e*d(6)=%-12.5e*n”,d2,d2,d2);22、以下程序的输出结果为x=1 y=2 *sum*=310 Squared is: 100。main()int x=1,y=2;printf(“x=%d y=%d *sum*=%dn”,x,y,x+y

38、);printf(“10 Squared is:%dn”,10*10);23、以下程序的输出结果为。#include main()int x=10; float pi=3.1416;printf(“(1) %dn”,x);printf(“(2) %6dn”,x);printf(“(3) %fn”,56.1);printf(“(4) %14fn”,pi);printf(“(5) %en”,568.1);printf(“(6) %14en”,pi);printf(“(7) %gn”,pi);printf(“(8) %12gn”,pi);答案: (1) 10(2) 10(表示空格)(3) 56.10

39、0000(4) 3.141600(5) 5.68100e+02(6) 3.14160e+00(7) 3.1416(8) 3.141624、以下程序的输出结果为。#include main()float a=123.456; double b=8765.4567;printf(“(1) %fn”,a);printf(“(2) %14.3fn”,a);printf(“(3) %6.4fn”,a);printf(“(4) %lfn”,b);printf(“(5) %14.3lfn”,b);printf(“(6) %8.4lfn”,b);printf(“(7) %.4fn”,b);答案:(1) 123

40、.456000(2) 123.457(3) 123.4560(4) 8765.456700(5) 8765.457(6) 8765.4567(7) 8765.456725、以下printf语句中*号的作用是【1】,输出结果是【2】。#include main()int i;for(i=1;i=5;i+) printf(“#%*dn”,i,i);答案:【1】可以使同一输出语句中的输出宽度得以改变。【2】#1#2#3#4#526、当运行以下程序时,从键盘键入right?(代表回车),则下面程序的运行结果是sjhiu。#include main()char c;while(c=getchar()!=

41、?) putchar(+c);27、下面程序的运行结果是s=254。#include main()int a,s,n,count;a=2; s=0; n=1; count=1;while(count=7) n=n*a; s=s+n; +count; printf(“s=%d”,s);28、当运行以下程序时,从键盘键入China#(代表回车),则下面程序的运行结果是5,5。#include main()int v1=0,v2=0; char ch;while(ch=getchar()!=#)switch(ch)case a:case h:default: v1+;case o: v2+;prin

42、tf(“%d,%dn”,v1,v2);29、执行下面程序段后,k值是36。k=1; n=263;do k*=n%10; n/=10; while(n);30、下面程序段中循环体的执行次数是3。a=10;b=0;do b+=2; a-=2+b; while(a=0);31、下面程序段的运行结果是* *。x=2;do printf(“*”); x-; while(!x=0);32、下面程序段的运行结果是a=-5。i=1; a=0; s=1;do a=a+s*i; s=-s; i+; while(i=10);printf(“a=%d”,a);33、下面程序的功能是用do-while语句求1至1000之间满足“用3除余2;用5除余3;用7除余2”的数,且一行只打印五个数。请填空。#include main()int i=1,j=0;doif(【1】)printf(“%4d”,i);j=j+1;if(【2】) printf(“n”);i=i+1;while(i1000);答案:i%3=2&i%5=3&i%7=234、下面程序的功能是统计正整数的各位数字中零的个数,并求各位数字中的最大者。请填空。#include main()int n,count,max,t;count=max=0;scanf(“%d”,&n);dot=【n%10】;i

温馨提示

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

评论

0/150

提交评论