《程序设计期末考试试卷3.pdf》由会员分享,可在线阅读,更多相关《程序设计期末考试试卷3.pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、单项选择题(每小题1分,共 35分)1、一个C 程序的执行是从()。A)本程序的main函数开始,到 main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第个函数开始,到本程序main函数结束2、下面四个选项中,合法的用户标识符是()A)P_#$B)2ha C)goto D)_ab3、要把整数67523赋与整型变量L则应说明I 的类型是()A)int B)long C)short D)unsigned4、已知int I;float f;正确的表达式是()A)(int 0%I B)int(f
2、)%I C)int(f%I)D)(int)f%I5、判断char型变量c l 是否为小写字母的正确表达式是()A)a=c 1 =a)&(cl=z)C)98=cl D)cl=/az&cl x)&(b=y z);A)6 B)0 C)1 D)48、以下能正确地定义整型变量a,b 和 c 并为其赋初值5 的语句是()。A)int a=b=c=5;B)int a,b,c=5;C)int a=5,b=5,c=5;D)a=b=c=5;9、已知:char a;int b;float c;double d;执 彳 了 语 句 c=a+b+c+d;后,变量 c 的数据类型是()A)int B)char C)flo
3、at D)double10、已知字母A 的ASCH码为6 5,以下程序段的输出结果是()char cl=A,c2=Y;printf(%d,%d,cl,c2);A)6 5,9 0 B)A,Y C)6 5,8 9 D)输出格式不合法1 1、阅读以下程序,当输入数据的形式为:2 5,1 3,1 0 y);B)i f(x=y)x+=y;C)i f(x!=y)sc a n f(%d ,&x)e l se sc a n f(%d”,&y)D)i f(x y)x+;y+;1 3、阅读以下程序:ma i n()i n t x;sc a n f(d”,&x);i f(x-5)pri n tfCl%d n,x);
4、e l se pri n tf(%d n ,x+);)程序运行后,如果从键盘上输入5,则输出结果是()A、3 B、4 C、5 D、61 4、C语言对嵌套i f语句的规定:e l se总是与()配对。A)其之前最近的i fC)缩进位置相同的i fB)第一个i fD)其之前最近的且未配对的i f1 5、以下错误的描述是()A)b re a k语句不能用于循环语句和swi tc h语句外的任何其它语句B)在swi tc h语句中使用b re a k语句或c on ti n ue语句的作用相同C)在循环语句中使用c on ti n ue语句是为了结束本次循环,而不是终止循环D)在循环语句中使用b re
5、 a k语句是为了使流程跳出循环体,提前结束循环1 6、若i n tI=1 0;执行下列程序后,变量I的正确结果是()swi tc h(i)c a se 9 :1+=1;c a se 1 0:1+=1;c a se 1 1:1+=1;d e fa ul t:1+=1;A)1 0 B)1 1 C)1 2 D)1 31 7、C语言中wh i l e与d o-wh i l e语句的主要区别是()A)d o-wh i l e的循环体至少无条件执行一次B)d o-wh i l e允许从外部转到循环体内C)d o-wh i l e的循环体不能是复合语句1 8、以下的for循 环()for(x=0,y=1
6、0 0;(y!=1 2 3 )&(x =3);x+);A)执行3次 B)执行4次C)循环次数不定 D)是无限循环1 9、执行for(I=l;I+4;)4后,变 量I的值为()A)3 B)4 C)5 D)不定2 0、以下程序段()x=-2 ;d o X =X *X ;wh i l e (!x);A是死循环 B循环执行两次 C循环执行一次 D有语法错误2 1、设x和y均为i n t型变量,则执行下面循环后,y的值为()。for(y=1 ,x=1 ;y =5 0;y+)i f(x=1 0)b re a k;i f(x%2=l)x+=5 c on ti n ue;x-=3;A)2 B)4 C)6 D)
7、822、以下程序的输出结果是()main()int I,j,x=O;for(I=0;I2;I+)x+;for(j=0;j8;y=+I)printf(%d,%d”,x-,y);A)10,1 9,2 B)9,8 7,6 C)10,9 9,0 D)10,10 9,124、以下正确的描述是()o在 C 语言程序中:A)函数的定义可以嵌套,但函数的调用不可以嵌套B)函数的定义不可以嵌套,但函数的调用可以嵌套C)函数的定义和函数的调用均不可以嵌套 D)函数的定义和函数的调用均可以嵌套25、以下正确的说法是()0建立函数的目的之一是:A)提高程序的执行效率B)提高程序的可读性 C)减少程序的篇幅D)减少程序
8、文件所占内存26、以下正确的说法是()。用户若需调用标准库函数,调用前必须重新定义用户可以重新定义标准库函数,若如此,该函数将失去原有含义系统根本不允许用户重新定义标准库函数用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调27、下列定义不正确的是(A)#define PI 3.141592C)int max(int x,int y);28、下列程序运行结果是(#define P 3#define S(a)P*a*amain()int ar;ar=S(3+5);printf(66%dM,ar);A)192 B)29B)#define S 354D)
9、static char c;C)27 D)2529、以下能对二维数组a 进行正确初始化的语句是()oA)int a口=1,0,1,5,2,3 B)int a 3=1,2,3,4,5,6)C)int a24=l,2,3,4,5,6 D)int a 3=1,0,1,1,1)30、下列描述中不正确的是()A)字符型数组中可以存放字符串B)可以对字符型数组进行整体输入、输出C)可以对整形数组进行整体输入、输出D)不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值31、C 语言程序中每个语句和数据定义的最后必须有一个()A 分号 B 逗号 C空格 D 冒号32、设有定义 int a=3,b,*
10、p=&a;,则下列语句中使b 不 为 3 的语句是()A)b=*&a;B)b=*a;C)b=a;D)b=*p;33、若有说明:inti,j=2,*p=&i;,则能完成i=j赋值功能的语句是()A、i=*p;B、*p=*&j;C、i=&j;D、i=*p;34、关于指针概念不正确的说法是()A)一个指针变量只能指向同一类型的变量B)一个变量的地址称为变量的指针C)只有同一类型变量的地址才能放到指向该类型变量的指针变量中D)指针变量可以同整数赋,不能用浮点数赋35、若有以下定义和语句:double r=99,*p=&r;*p=r;则以下叙述正确的是()A)两处的*p 含义相同,都说明给指针变量p 赋
11、值B)在 double r=99,*p=&r;”中,把 r 的地址赋值给了 P 所指的存储单元C)语句*p=r;”把变量r 的值赋给指针变量PD)语句*p=r;”取变量r 的值放回r 中二、填空题(每空1分,共 16分)1、设C 语言中,一个int型数据在内存中占2 个字节,则 int型数据的取值范围为 o2、有逗号表达式(a=3*5,a*4),则 a 的值为 。3、C 程序中,每条语句都以 结 尾。4、若 a=1 ,b=2,则表达式a b?a:b+1 的值是。5、C语 言 中 的 标 识 符 只 能 由 三 种 字 符 组 成,它们是、,06、若 a=5,b=2,c=1 厕表达式 a-b b
12、)m=a;else m=b;转换成与其等价的一条语句是:o8、执行完“for(i=0;+i=a,&ch v=z,);printf(t4%c”,ch);)2、下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。int n=0,c;c=getchar();while()if()n+;c=getchar();)3、设数组a 中的元素均为正整数,以下程序是求a 中偶数的个数和偶数的平均值。请填空。main()int a10=1,2,3,4,5,6,7,8,9,10;int k,s,i;float ave;for(k=s=i=0;i 10;i+)if(ai%2!=0);s+=a i ;k+;if(k!=0)ave=s/k;printf(%d,%fn,9,k,ave);)五、仔细阅读如下程序,写出运行结果(每小题3 分,共 9 分)1、#define PI 3main()int s,r;for(r=4;r100)break;else printf(us=%d”,s);)2、main()int I;for(I=0;I=500的最小n 及总和值(5 分)3、从键盘输入一百分制成绩,要求输出成绩等级A、B、C、D、E。其中:90分以上为A,80 89分为B,70 79分为C,60 69分为D,60分以下为E。(10分)