C语言程序员初级题库.docx
- 文档编号:7199347
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:12
- 大小:21.84KB
C语言程序员初级题库.docx
《C语言程序员初级题库.docx》由会员分享,可在线阅读,更多相关《C语言程序员初级题库.docx(12页珍藏版)》请在冰豆网上搜索。
C语言程序员初级题库
全国工业和信息化人才培养工程职业技术考试
C语言程序员(初级)训练题库
一、填空题
1、当a=5,b=4,c=2时,表达式a>b!
=c的值是__1____。
2、函数参数包括和实际参数和形式参数
3、设inta[3][4]={{1,3,5,7},{2,4,6,8}};则*(*a+1)的值为___3___。
4、字符型数据在内存中以二进制形式存储。
5、能被3整除又能被5整除的数的逻辑表达式为:
m%3==0&&m%5==0。
6、整型数据在计算机内存中采用二进制存储。
7、结束循环或switch语句的控制语句是break。
8、___数组___是具有相同数据类型变量的集合。
9、C语言中的标识符只能由三种字符组成,它们是__下划线____,___字母___和___数字___。
10、设inta=1,b=2,c=3,d;执行d=!
(a十b十c)后,d的结果是___0___。
11、在C语言中,二维数组元素的内存中的存放顺序是__按行优先储存____。
12、条件“2
13、执行下面程序段后,k值是___36___。
#include"stdio.h"
main()
{intk=1,n=263;
do
{k*=n%10;
n/=10;}while(n);
printf("%d",k);
14、若有说明语句:
charc=‘\72’;则变量c包含___4___个字符。
15、C语言程序由若干个函数构成,此特点称为程序的模块化。
16、著名的计算机科学家尼古拉斯·沃斯曾提出:
程序=数据结构+算法。
17、使数据按格式说明符的要求进行输出的函数是printf。
18、系统默认数组的下标变量的下标值是从0开始。
19、C语言中函数返回值的类型是由定义函数的类型决定的。
20、C语言中表示静态存储类别的关键字是static。
二、判断题
1、a123是正确的C语言标识。
(1)
2、I\am,one_half,start$it和3pai都可以用作C语言程序中的标识符。
(0)
3、C语言中程序中,表达式5%2的结果是2.5。
(0)
4、“#include
(1)
5、C程序总是从主函数main开始执行,在main中结束。
它只可以出现在程序的开始位置。
(0)
6、如果inta=3,b=6,则表达式“a
a:
b”的值是3。
(1)
7、C程序每个语句和数据定义的后面必须有一个分号。
(0)
8、Int*p=&i,j;是正确的定义。
(0)
9、chara(10)是对一维数组a的正确说明。
(0)
10、常量的值在程序运行过程中不可改变。
(1)
11、如有以下程序inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a,则*(p+8)=9。
(1)
12、字符常量用双引号界定一个字符。
(0)
13、多个变量赋予同一初值,可以写成“floata=b=c=5.5;”。
(0)
14、自增运算符只能用于变量和表达式,而不能用于常量。
(1)
15、break语句是结束本次循环,返回判断下一次循环的条件。
(0)
16、C语言中”\0”是字符串结束标志。
(1)
17、C语言中,如未指定存储类别的变量,其隐含的存储类别为extern。
(0)
18、C语言不能对数组作动态分配。
(0)
19、在函数调用时,实际参数和形式参数可以同名。
(1)
20、允许在不同的函数中使用相同的变量名,它们代表不同的对象,互不干扰。
(0)
三、多项选择题
1、关于C语言的描述,正确的有(ABC)。
A、C语言是学习其它语言的基础
B、既可以编写系统软件,又可以编写应用程序
C、语法限制不太严格,程序设计自由度大
D、执行效率高,但可移植性不太好
2、一个C语言程序是由(AB)。
A、一个主程序和若干子程序组成
B、函数组成
C、若干过程组成
D、若干子程序组成
3、下列属于C语言关键字的有(ABC)。
A、doubleB、voidC、returnD、file
4、一个c程序的执行是从(D)。
A、main()函数开始,直到最后一个函数结束
B、第一个函数开始,直到最后一个函数结束
C、第一个语句开始,直到最后一个语句结束
D、main()函数开始,直到main()函数结束
5、设n=10,i=4、则赋值运算n%=i+1执行后,n的值是(A)。
A、0B、3C、2D、1
6、逗号表达式(a=3*5,a*4),a十15的值为(C)。
A、15B、60C、30D、不确定
7、算法的特征有(AC)。
A、有穷性B、确切性C、必须有输出D、可以无输入
8、设X,Y均为FLOAT变量,则以下不合法的赋值语句是(D)。
A、++x;
B、y=(x%2)/10;
C、x*=y+8;
D、x=y=10;
9、当调用函数时,实参是一个数组名,则向函数传送的是(C)。
A、数组的长度
B、数组每一个元素的地址
C、数组的首地址
D、数组每个元素中的值
10、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是(B)。
A、x&&y
B、x<=y
C、x||y+z&&y-z
D、!
((x<y)&&!
z||1)
11、关于C语言标识符的命名规则,不正确的有(AB)。
A、以字母、下划线、数字开头
B、不区分大小写字母
C、标识符不能是关键字
D、标识符的长度有限制
12、下列属于C语言的数据类型的有(BC)。
A、实型B、数组型C、指针类型D、空类型
13、以下正确的说法是(C)。
A、如果在一个函数中的复合语句中定义了一个变量,则该变量只在该复合语句中有效
B、在该函数中有效
C、在本程序范围内均有效
D、非法变量
14、若有说明:
inta[3][4];则对a数组元素的非法引用是(D)。
A、a[0][2*1]B、a[1][3]C、a[4-2][0]D、a[0][4]
15、若有说明:
inta[3][4]={0};则下面正确的叙述是(D)。
A、只有元素a[0][0]可得到初值0
B、此说明语句不正确
C、数组a中各元素都可得到初值,但其值不一定为0
D、数组a中每个元素均可得到初值0
16、下列属于算术运算符的有(AD)。
A、+B、< 17、在C语言中,(B)。 A、函数定义可以嵌套,但函数调用不能嵌套 B、函数定义不可以嵌套,但函数调用可以嵌套 C、函数定义和调用均不能嵌套 D、函数定义和调用均可以嵌套 18、若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是(D)。 A、a,point,*&aB、&*a,&a,*point C、*&point,*point,&aD、&a,&*point,point 19、关于if…else语句和switch语句的说法正确的有(A)。 A、所有的switch语句都可以用if-else语句来替换 B、所有的if-else语句都可以用switch语句来替换 C、switch语句相对于if...else来说执行效率更高 D、if...else语句相对于switch来说执行效率更高 20、关于循环语句的说法,错误的有(CD)。 A、while和do-while循环只在while后面指定循环条件 B、for循环在表达式3中包含使循环趋于结束的操作 C、for语句不需要实现循环变量的初始化 D、while循环、do-while循环可以用break语句跳出循环,但for循环不能用break语句跳出循环 21、下列对数组初始化语句正确的有(ABCD)。 A、inta[10]={0,1,2,3,4,5,6,7,8,9}; B、inta[10]={0,1,2,3,4}; C、inta[10]={0}; D、inta[]={1,2,3,4,5}; 22、关于函数的说法,正确的有(AD)。 A、一个C程序必须有主函数 B、主函数可以被其他函数调用 C、函数调用时不能嵌套调用 D、函数定义时不能嵌套定义 23、C语言中供用户使用的存储空间有(CD)。 A、程序存储区 B、常量存储区 C、静态存储区 D、动态存储区 24、C语言允许将局部变量的值放在CPU中的寄存器中,即“寄存器变量”,用关键字(B)作声明。 A、staticB、registerC、autoD、extern 25、关于指针的说法,正确的有(AD)。 A、专门用于存放另一个变量的地址的变量,称为指针变量 B、指针变量可以用于保存变量的地址,也可以赋予任何其他数据 C、可以把一个数值直接赋予指针变量 D、指针支持动态数据结构 26、关于结构体类型数据的说法,不正确的有(D)。 A、结构体类型数据,可以将不同类型的数据组合成一个有机的整体 B、可以整体进行输入和输出结构体变量 C、结构体变量的成员可以像普通变量一样运算 D、可以引用结构体变量成员的地址,也可以引用结构体变量的地址 27、关于"共用体"类型结构的说法,正确的有(B)。 A、使用"共用体",可以将几种不同类型的变量存放到同一段内存单元 B、共用体变量的地址和它的各成员的地址是一样的 C、共用体变量所占内存长度是各成员占的内存长度之和 D、共用体变量中,所有共用体成员可以同时使用 28、下列属于位运算操作符的有(ABC)。 A、&B、|C、~D、! 29、下列运算符优先级最高的是(C)。 A、算术运算符B、关系运算符C、逻辑非! D、&& 30、C语言语句的分类包括(ABC)。 A、表达式语句B、函数调用语句C、复合语句D、数据查询语句 31、一个C程序的编译过程是(C)。 A、预处理,编译,连接,汇编 B、预处理,汇编,编译,连接 C、预处理,编译,汇编,连接 D、编译,预处理,汇编,连接 32、下列函数声明形式正确的有(BC)。 A、intfn(intx;inty);B、intfn(intx,inty); C、intfn(int,int);D、intfn(intx,y); 33、下面的程序B main() {intx=3; do{ printf("%d\n",x-=2); }while(! (--x)); } A、输出的是1B、输出的是1和-2C、输出的是3和0D、是死循环 34、当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是(B)。 if(a if(c else if(a if(b elsex=3; elsex=6; elsex=7; A、1B、2C、3D、6 35、下面程序的运行结果是(D)。 #include main() {inti,b,k=0; for(i=1;i<=5;i++) {b=i%2; while(b-->=0)k++; } printf(“%d,%d”,k,b); } A、3,-1B、8,-1C、3,0D、8,-2 36、以下程序的正确运行结果是(C)。 #include num() {externintx,y; inta=15,b=10; x=a-b; y=a+b; } intx,y; main() {inta=7,b=5; x=a+b; y=a-b; num(); printf("%d,%d\n",x,y);} A、12,2B、不确定C、5,25D、1,12 37、定义如下变量和数组: intk; inta[3][3]={1,2,3,4,5,6,7,8,9}; 则下面语句的输出结果是(A)。 for(k=0;k<3;k++) printf(“%d”,a[k][2-k]); A、357 B、369 C、159 D、147 38、以下程序输出的结果是(C) voidmain() {inta=5,*p1,**p2; p1=&a,p2=&p1; (*p1)++; printf(“%d\n”,**p2); } A、5B、4C、6D、不确定 39、下面程序段的运行结果是(C)。 char*s=”abcde”; s+=2;printf(“%d”,s); A、cde B、字符’c’ C、字符’c’的地址 D、无确定的输出结果 40、VC++6.0中以下程序的运行结果是(D). #include“stdio.h” main() {structdata {intyear,month,day; }today; printf(“%d\n”,sizeof(structdata)); } A、6B、8C、10D、12 四、综合实践题 1、编写程序,在屏幕上输出阶梯形式的九九乘法口诀表。 2、判断输入整数x的正负性和奇偶性。 3、“水仙花数”是指一个三位数,它的三个数位数字的立方和这个数的数值相等,编程打印所有的水仙花数。 如407=4 +0 +7 。 4、求二维数组中最大元素值a[3][4]={{1,2,3,4},{9,8,7,6},{-10,10,-5,2}};。 5、利用递归函数求n! ,写出递归函数fact。 提示: n! =1×2×3×……×n 五、程序填空题 1、当运行以下程序时,从键盘出入China# #include main() {intv1=0,v2=0; charch; while((ch=getchar())! ='#') {switch(ch) {case'a': case'h': default: v1++; case'o': v2++; } } printf("%d,%d\n",v1,v2); } 2、下面程序的输出结果是: ( )。 #include main() { inti,j; for(i=4;i>=1;i--)* {** printf("*");*** for(j=1;j<=4-i;j++)**** printf("*"); printf("\n"); } } 3、下面程序的输出结果是: ( 8,17 )。 #include main() {intk=4,m=1,p; p=func(k,m);printf(“%d,”,p); p=func(k,m);printf(“%d\n”,p); } func(inta,intb) {staticintm=0,i=2; i+=m+1; m=i+a+b; return(m); } 4、下面程序的输出结果是_day_____: #include main() {char*p="Wednesday"; p=p+6; printf("%s\n",p); } 5、下面程序的输出结果是_0,1,2,1,2,3,2,3,4_____: #include main() {intn[3][3],i,j; for(i=0;i<3;i++) {for(j=0;j<3;j++) {n[i][j]=i+j; printf(“%d”,n[i][j]); } } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 程序员 初级 题库