下半年计算机二级c语言基础试题
下半年计算机二级c语言基础试题
任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。下面是我收集的关于计算机二级c语言基础试题,希望大家认真阅读!
下半年计算机二级c语言基础试题1
一、选择:
1.给出以下定义:
char acX[ ]= "abcdefg";
char acY[ ]= {'a','b','c','d','e','f','g'};
则正确的叙述为( )
A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同
C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组acY的长度
答案:C
2.
void example(char acHello[])
{
printf("%d", sizeof(acHello));
return;
}
void main()
{
char acHello[] = "hello";
example(acHello);//数组名称作参数,传的是地址,一个地址占四个字节
return;
}
的输出是
A 4 B 5 C 6 D不确定
答案:A
3. 有以下程序段
char acArr[]= "ABCDE";
char *pcPtr;
for(pcPtr = acArr; pcPtr < acArr + 5; pcPtr++)
{
printf("%s/n", pcPtr);
}
return;
输出结果是( )
A) ABCD B) A C) E D) ABCDE
B D BCDE
C C CDE
D B DE
E A E
答案:D
4.在中断中,不能同步获取信号量,但是可以释放信号量。
A.正确 B.错误
答案:A
5.以下叙述中不正确的是( )
A) 在不同的函数中可以使用相同名字的变量
B) 函数中的形式参数是局部变量
C) 在一个函数内定义的变量只在本函数范围内有效
D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数中的成对括号构成的代码)
答案:D
6.设有如下定义:
unsigned long pulArray[] = {6, 7, 8, 9, 10};
unsigned long *pulPtr;
则下列程序段的输出结果为( )
pulPtr = pulArray;
*(pulPtr + 2) += 2;
printf ("%d,%d/n", *pulPtr, *(pulPtr + 2));
A)8,10 B)6,8 C)7,9 D)6,10
答案:D
7. 定义结构体时有下面几种说法,请指出正确的(多选):______
A、结构体中的每个部分,最好进行四字节对齐;
B、结构体的总长度最好是四字节对齐;
C、结构中成员的存放不用考虑字节对齐情况;
答案:A、B
8.void example()
{
int i;
char acNew[20];
for(i = 0; i < 10; i++)
{
acNew[i] = '0';
}
printf("%d/n", strlen(acNew));
return;
}
的输出为( )
A 0 B 10 C 11 D不确定
答案:D
9.switch(c)中的c的数据类型可以是char、long、float、unsigned、bool. ( )
A. 正确 B. 错误
答案:B
10. 网络上传输的字节序默认是大字节的,如果主机是小字节序,在网络通信时则须进行字节序转换;如果主机是
大字节序,为了程序的一致性及可移植性,最好也在程序中加上字节序转换的操作(空操作)。
A. 正确 B.错误
答案:A
二、 填空题
1、 C语言函数返回类型的默认定义类型是
2、 函数的实参传递到形参有两种方式: 和
3、在一个函数内部调用另一个函数的调用方式称为 。在一个函数内部直接或间接调用该函数成为函数 的调用方式
4、C语言变量按其作用域分为 和
5、凡在函数中未指定存储类别的局部变量,其默认的存储类别为
三、 看程序写结果
1、#include
Int abc(int u,int v);
Void main()
{int a=24,b=16,c;
c=abc(a,b);
printf(“value=%d”,c);
}
Int abc(int u, int v)
{int w;
While(v)
{w=u%v;
u=v;
v=w;
}
Return u;
}
2、#include
int x1=30,x2=40;
main()
{int x3=10,x4=20;
sub(x3,x4);
sub(x2,x1);
printf(“%d,%d,%d,%d ”,x3,x4,x1,x2);
}
sub(int x,int y)
{x1=x;x=y;y=x1;}
3、#include
Main()
{int i=5;
Printf(“%d ”,sub(i));
}
sub(int n)
{int a;
If(n==1) return 1;
a=n+sub(n-1);
return (a);
}
4、#include
Void fun()
{static int m;
m+=2;
printf(“%d ”,m);
}
Main()
{int a;
For(a=1;a<=4;a++) fun();
Printf(“ ”);
}
四、 编程题
1、 编写一个函数,判断任一整数是否为素数,用main()函数调用并测试之。
2、 用递归方法求n!
3、 有一个一维数组,内放10个学生成绩,写一个函数,求出平均分,最高分和最低分
下半年计算机二级c语言基础试题2
1.下列叙述中正确的是( )。
A. 所有数据结构必须有根结点
B. 所有数据结构必须有终端结点(即叶子结点)
C. 只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构
D. 没有根结点或没有叶子结点的数据结构一定是非线性结构
【答案】D
【解析】D项正确,线性结构的特点是:
①集合中必存在“第一个元素"且惟一;
②集合中必存在“最后一个元素”且惟一;
③除最后一个元素外,其他数据元素均有惟一的“后继;
④除第一个元素外,其他数据元素均有惟一的“前驱”。所以没有根结点或没有叶子结点的数据结构一定是非线性结构。AB两项错误,不是所有数据结构都必须有根结点和叶子结点;C项错误,数据结构中若有中间结点不满足只有一个前件或者后件的条件,就不是线性结构。答案选择D选项。
2. 以下叙述中错误的是( )。
A. C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
B. C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件
C. 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D. C语言源程序经编译后生成后缀为.obj的目标程序
【答案】A
【解析】A项错误,注释语句不会被翻译成二进制的'机器指令。C源程序经过C编译程序编译之后生成后缀为.obj的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把.obj文件与各种库函数连接起来生成一个后缀为.exe的可执行文件。答案选择A选项。
3. C语言主要是借助以下( )功能来实现程序模块化的。
A. 定义函数
B. 定义常量和外部变量
C. 三种基本结构语句
D. 丰富的数据类型
【答案】A
【解析】C程序的模块化主要通过函数来实现。C语言允许对函数单独进行编译,从而可以实现模块化。答案选择A选项。
4. 有以下程序段:
char ch;
int k;
ch='a';
k=12;
print("%c,%d,",h,ch,k);
printf("k=%d ",k);
已知字符a的ASCII码十进制值为97,则执行上述程序段后输出的结果是( )。
A. 因变量类型与格式描述符的类型不匹配输出无定值
B. 输出项与格式描述符个数不符,输出为零值或不定值
C.a,97,12k=12
D. a,97,k=12
【答案】D
【解析】字符变量的值是该字符的ASCII码值,可以参与整型变量所允许的任何运算。"ch='a",%c表示以字符格式输出ch的值,所以输出为a;%d表示以十进制代码的形式输出ch的值,为97;k没有对应的输出格式,不输出。在第二个语句中,首先输出"k=",然后以十进制代码输出k的值,为12。答案选择D选项。
5. 下列叙述中正确的是( )。
A. 栈是“先进先出”的线性表
B. 队列是“先进后出"的线性表
C. 循环队列是非线性结构
D. 有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
【答案】D
【解析】有序的线性表既可采用顺序存储结构,也可以采用链式存储结构。A项错误,栈是“先进后出"的线性表B项错误,队列是“先进先出"的线性表;C项错误,循环队列是线性结构的,有序的线性表既可采用顺序存储结构,也可采用链式存储结构。
答案选择D选项。
6. 某二叉树的中序序列为DCBAEFG,后序序列为DCBGFEA,则该二叉树的深度(根结点在第1层)为( )。
A. 5
B. 40
C.3
D. 2
【答案】B
【解析】二叉树的后序序列为DCBGFEA,则A为根结点。中序序列为DCBAEFG,则DCB为左子树结点,EFG为右子树结点。同理B为C父结点,C为D父结点。根据分析,可画出左子树,同理E为F父结点,F为G父结点。根据分析,可画出右子树,故二叉树深度为4层。答案选择B选项。
7. 设有定义:struct{intn;floatx;}s[2],m[2]={{10,2.8},{0,0.0}};,则以下赋值语句中正确的是( )。
A. s[0]=m[1];
B. s=m;
C.s.n=m.n;
D. s[2].x=m[2].x;
【答案】A
【解析】定义了结构体类型数组s,长度为2,结构体类型数组m,长度为2,并对数组m进行了初始化。同类型的结构体可以直接用变量名实现赋值,A项正确;数组名为数组首地址,地址常量之间不可以相互赋值,B项错误;数组名为地址常量不是结构体变量,不能引用成员,C项错误;s[2]与m[2]数组越界,D项错误。答案选择A选项。
8. 关于C语言标识符,以下叙述错误的是( )。
A. 标识符可全部由数字组成
B. 标识符可全部由下划线组成
C. 标识符可全部由小写字母组成
D. 标识符可全部由大写字母组成
【答案】A
【解析】C语言标识符只能由字母、数字、下划线构成,且只能以字母、下划线开头,故答案选择A选项。
9. 以下程序段中的变量已定义为int类型,则
sum=pAd=5;
pAd=sum++,++pAd,pAd++;
printf("%d ",pAd);
程序段的输出结果是( )。
A. 6
B. 4
C. 5
D. 7
【答案】D
【解析】自增和自减运算符的两种用法:前置运算,运算符放在变量之前,规则是先使变量的值增(或减)1,然后以变化后表达式的值参与其他运算;后置运算,运算符放在变量之后,规则是变量先参与其他运算,然后再使变量的值增(或减)1。执行pAd=sum++,sum++是后置自增,执行完后,pAd=5,sum=6。++pAd和pAd++语句中没有其他运算,即效果相同,pAd分别加1,两句执行完后,pAd7。答案选择D选项。
;绛旓細C. 鐢C璇█缂栧啓鐨勭▼搴忕О涓烘簮绋嬪簭,瀹冧互ASCII浠g爜褰㈠紡瀛樻斁鍦ㄤ竴涓枃鏈枃浠朵腑 D. C璇█婧愮▼搴忕粡缂栬瘧鍚庣敓鎴愬悗缂涓.obj鐨勭洰鏍囩▼搴 銆愮瓟妗堛慉 銆愯В鏋愩慉椤归敊璇,娉ㄩ噴璇彞涓嶄細琚炕璇戞垚浜岃繘鍒剁殑'鏈哄櫒鎸囦护銆侰婧愮▼搴忕粡杩嘋缂栬瘧绋嬪簭缂栬瘧涔嬪悗鐢熸垚鍚庣紑涓.obj鐨勪簩杩涘埗鏂囦欢(绉颁负鐩爣鏂囦欢),鐒跺悗鐢扁滈摼鎺ョ▼搴忊(Link)鐨勮蒋浠舵妸.ob...
绛旓細C)char a={鈥橝鈥,鈥橞鈥,鈥機鈥檥; D)int a[5]="0123"; (26)鏈変互涓嬬▼搴 A int f1(int x,int y){return x>y?x:y;} int f2(int x,int y){return x>y?y:x;} main() { int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+...
绛旓細(18) 鑻ュ凡瀹氫箟:int a=25,b=14,c=19;浠ヤ笅涓夌洰杩愮畻绗(?:)鎵鏋勬垚璇彞鐨勬墽琛屽悗a<=25&&b--<=2&&c?printf("***a=%d,b=%d,c=%d\n",a,b,c):printf("###a=%d,b=%d,c=%d\n",a,b,c);绋嬪簭杈撳嚭鐨勭粨鏋滄槸 A)***a=25,b=13,c=19 B)***a=26,b=14,c=19 C)### a=25,b=13,...
绛旓細1銆佸~绌15棰橈紝鍓5棰樹负鍏叡鍩虹鐭ヨ瘑 2銆佸彧鏈C閮ㄥ垎鐨勫墠10棰橈紙鍗11~20锛夋瘡棰1鍒嗭紝鍏朵綑濉┖閫夋嫨閮芥槸2鍒嗭紝婊″垎100鍒嗭紝鏃堕棿90鍒嗛挓銆
绛旓細璁$畻鎺ヤ簩绾c璇█棰搴撴垜寤鸿澶у鍘荤櫨搴︽悳绱細鍘熷垱鍔涙枃妗 鍘熷垱鍔涙枃妗eぇ姒傛敹绾充簡100濂璁$畻鏈轰簩绾璇█璇曢锛岃繖100濂棰樺熀鏈涓婃兜鐩栦簡璁$畻鏈轰簩绾璇█鎵鏈夌殑棰樼洰鍜岀煡璇嗙偣銆備竴鍏480澶氶〉pdf锛岃繖涔堝璇曢鎴戜滑搴旇濡備綍浣跨敤鍛紵1锛岄鍏堟垜浠仛棰樿鏈夐拡瀵规у湴鍋氾紝鍋氱殑鏃跺欏鍔犳濊冿紝涓轰粈涔堣鎿嶄綔杩欎竴姝ワ紵涓轰粈涔堣杈撳叆...
绛旓細璁$畻鏈轰簩绾璇█閫夋嫨棰樺繀椤诲涓鍗婏紙20 棰橈級鎵嶈兘杩囥傝绠楁満浜岀骇c璇█棰樼洰 1.鑷2019骞3鏈堣冭瘯璧凤紝浜岀骇璇█绫诲強鏁版嵁搴撶被绉戠洰锛堝嵆闄S Office楂樼骇搴旂敤澶栫殑鍏朵粬浜岀骇绉戠洰锛夎皟鏁磋幏璇佹潯浠朵负锛氭诲垎杈惧埌60鍒嗕笖閫夋嫨棰樺緱鍒嗚揪鍒50%鍙婁互涓婏紙鍗抽夋嫨棰樺緱鍒嗚杈惧埌20鍒嗗強浠ヤ笂锛夌殑鑰冪敓鏂瑰彲鍙栧緱鍚堟牸璇佷功銆傦紙閫夎嚜鐧惧害鐧剧锛2....
绛旓細2020骞璁$畻鏈轰簩绾璇█鑰冭瘯姣忔棩涓缁冿紙6鏈18鏃ワ級1.涓嬪垪鍥涚粍閫夐」涓紝姝g‘鐨凜璇█鏍囪瘑绗︽槸( )銆侫銆 %x B銆乤+b C銆乤123 D銆123 绛旀锛欳 2銆佷笅鍒楀洓缁勫瓧绗︿覆涓兘鍙互鐢ㄤ綔C璇█绋嬪簭涓殑鏍囪瘑绗︾殑鏄( )銆侫銆乸rint _3d db8 aBc B銆両am one_half start$it 3pai C銆乻tr_1 Cpp pow while D銆...
绛旓細C.(!E==0)D.(E!=0)绛旀锛欱 鏇村2020骞璁$畻鏈轰簩绾璇█鑰冭瘯姣忔棩涓缁璇曢锛岃缁х画鍏虫敞鐜悆闈掕棨璁$畻鏈轰簩绾ч閬撱傞渶瑕佸強鏃朵簡瑙h冭瘯鍔ㄦ佺殑灏忎紮浼村彲“ 鍏嶈垂棰勭害鐭俊鎻愰啋”灞婃椂鐜悆闈掕棨浼氬強鏃朵负澶у鎺ㄩ2020骞磋绠楁満浜岀骇鑰冭瘯鐩稿叧淇℃伅鎻愰啋銆傜幆鐞冮潚钘ゅ弸鎯呮彁绀猴細瀵逛簬鎯宠鍙傚姞璁$畻鏈轰簩绾ц冭瘯鐨勫皬浼欎即浠紝...
绛旓細绛旀锛欳 鏇村2020骞璁$畻鏈轰簩绾璇█鑰冭瘯姣忔棩涓缁璇曢锛岃缁х画鍏虫敞鐜悆闈掕棨璁$畻鏈轰簩绾ч閬撱傞渶瑕佸強鏃朵簡瑙h冭瘯鍔ㄦ佺殑灏忎紮浼村彲“ 鍏嶈垂棰勭害鐭俊鎻愰啋”灞婃椂鐜悆闈掕棨浼氬強鏃朵负澶у鎺ㄩ2020骞磋绠楁満浜岀骇鑰冭瘯鐩稿叧淇℃伅鎻愰啋銆傜幆鐞冮潚钘ゅ弸鎯呮彁绀猴細瀵逛簬鎯宠鍙傚姞璁$畻鏈轰簩绾ц冭瘯鐨勫皬浼欎即浠紝鐜悆闈掕棨鐗瑰湴涓烘偍鍑嗗浜嗚绠楁満...
绛旓細C.蹇呴』鏄鏁 D.鍙互鏄换鎰忓悎娉曠殑鏁板 绛旀锛欴 5.璁$畻鏈鸿兘鐩存帴鎵ц鐨勭▼搴忔槸( )銆侫.婧愮▼搴 B.鐩爣绋嬪簭 C.姹囩紪绋嬪簭 D.鍙墽琛岀▼搴 绛旀锛欴 鏇村2020骞璁$畻鏈轰簩绾璇█鑰冭瘯姣忔棩涓缁璇曢锛岃缁х画鍏虫敞鐜悆闈掕棨璁$畻鏈轰簩绾ч閬撱傞渶瑕佸強鏃朵簡瑙h冭瘯鍔ㄦ佺殑灏忎紮浼村彲“ 鍏嶈垂棰勭害鐭俊鎻愰啋”灞婃椂鐜悆闈掕棨...