2015年9月全国计算机等级考试二级c语言笔试试题(含参考答案)
- 格式:doc
- 大小:79.50 KB
- 文档页数:9
全国计算机等级考试二级C笔试试卷(含参考答案)以下各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)以下表达中正确的选项是A)程序设计就是编制程序 B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进展再测试 D)程序经调试改错后不必进展再测试(2)以下数据构造中,能用二分法进展查找的是A)顺序存储的有序线性表 B)线性链表C)二叉链表 D)有序线性链表(3)以下关于栈的描述正确的选项是A)在栈中只能插入元素而不能删除元素B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(4)以下表达中正确的选项是A)一个逻辑数据构造只能有一种存储构造B)数据的逻辑构造属于线性构造,存储构造属于非线性构造C)一个逻辑数据构造可以有多种存储构造,且各种存储构造不影响数据处理的效率D)一个逻辑数据构造可以有多种存储构造,且各种存储构造影响数据处理的效率(5)以下描述中正确的选项是A)软件工程只是解决软件工程的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原那么D)软件工程只是解决软件开发中的技术问题(6)在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言) B)PAD图 C)N-S图 D)DFD图(7)以下表达中正确的选项是A)软件交付使用后还需要进展维护B)软件一旦交付使用就不需要再进展维护C)软件交付使用后其生命周期就完毕D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决A)数据共享问题 B)数据平安问题C)大量数据存储问题 D)简化数据维护(9)设有如下关系表:R S TA B C A B C A B C1 123 1 3 1 1 22 23 2 2 33 1 3那么以下操作中正确的选项是A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S(10)数据库系统的核心是A)数据模型 B)数据库管理系统 C)数据库 D)数据库管理员(11)以下表达中错误的选项是A)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识(12)以下表达中错误的选项是A)C语句必须以分号完毕B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行D)赋值表达式末尾加分号就构成赋值语句(13)以下表达中正确的选项是A)调用printf函数时,必须要有输出项B)使用putchar函数时,必须在之前包含头文件stdio.hC)在中,整数可以以十二进制、八进制或十六进制的形式输出D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码(14)以下关于函数的表达中正确的选项是A)每个函数都可以被其它函数调用(包括main函数)B)每个函数都可以被单独编译C)每个函数都可以单独运行D)在一个函数内部可以定义另一个函数(15)假设有语句:char *line[5];,以下表达中正确的选项是A)定义line是一个数组,每个数组元素是一个基类型为char 的指针变量B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C)定义line是一个指针数组,语句中的*号称为间址运算符D)定义line是一个指向字符型函数的指针(16)有以下程序段typedef struct NODE{ int num; struct NODE *next;} OLD;以下表达中正确的选项是A)以上的说明形式非法 B)NODE是一个构造体类型C)OLD是一个构造体类型 D)OLD是一个构造体变量(17)以下表达中错误的选项是A)C语言中对二进制文件的访问速度比文本文件快B)C语言中,随机文件以二进制代码形式存储数据C)语句 FILE fp; 定义了一个名为fp的文件指针D)C语言中的文本文件以ASCII码形式存储数据(18)当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是A)k%2 B)k%2==1 C)(k%2)!=0 D)!k%2==1(19)以下不能正确计算代数式值的C语言表达式是A)1/3*sin(1/2)*sin(1/2) B)sin(0.5)*sin(0.5)/3C)pow(sin(0.5),2)/3 D)1/3.0*pow(sin(1.0/2),2)(20)以下能正确定义且赋初值的语句是A)int n1=n2=10; B)char c=32;C)float f=f+1.1; D)double x=12.3E2.5;(21)以下程序的功能是:给r输入数据后计算半径为r的圆面积s。
1.(A)是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程2.C语言程序从 ( C ) 开始执行。
A、程序中第一条可执行语句B、程序中第一个函数C、程序中的main函数D、包含文件中的第一个函数3、以下说法中正确的是( C )。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是( B )。
A、 C程序的工作过程是编辑、编译、连接、运行B、 C语言不区分大小写。
C、 C程序的三种基本结构是顺序、选择、循环D、C程序从main函数开始执行5.下列正确的标识符是(C )。
A、-a1B、a[i]C、a2_iD、int t5~8题为相同类型题考点:标识符的命名规则只能由字母、数字、下划线构成数字不能作为标识符的开头关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B )。
A、3axB、xC、caseD、-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是( C )。
A、 %xB、a+bC、a123D、123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。
A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while 为关键字,不满足(3)9.C语言中的简单数据类型包括(D )。
2015年计算机等级考试《二级C语言程序设计》机考操作题题库(附答案)本卷共分为3大题15小题,作答时间为240分钟,总分200分,120分及格。
一、程序填空题(共50分)1、请补充main()函数,该函数的功能是:计算3名学生各科的平均成绩。
例如,当scoreEN][M]={{85,62,89.5,60,69),{90,96.84.5,100,85},{92,97。
86,73,85})时,五门学科的平均分为:898586.777.779.7。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。
试题程序:2、请补充函数proc(),该函数的功能是:把字符下标为非素数的字符从字符串str中删除,把字符下标为素数的字符重新保存在字符串str中。
字符串str从键盘输入,其长度作为参数传人函数proc()。
例如,输入“helloeverybody”,输出“lleeoy”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:3、给定程序中,函数fun()的功能是:把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。
例如,形参s所指的字符串为:abcdefgh,执行结果为:ahcbedgf。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在fun()函数的横线上填入所编写的若干表达式或语句。
试题程序:4、请补充main()函数,该函数的功能是:把文本文件text2中的内容追加到文本文件text1的内容之后。
例如,文件text2的内容为“1’m very happy!”,文件Text1的内容为“I’m a girl,”,追加之后文件text1的内容为“1’m a girl,I’m very happy”。
2015年全国计算机等级考试二级C语言全真模拟试卷(9)一、单项选择题(共40题,合计40分)1下列叙述中正确的是( )。
A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指执行算法所需要的计算工作量C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关2栈和队列的共同点是( )。
A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点3下列关于队列的叙述中正确的是( )。
A.在队列中只能插人数据B.在队列中只能删除数据C.队列是先进先出的线性表D.队列是先进后出的线性表4下面概念中,不属于面向对象方法的是( )。
A.对象B.继承C.类D.过程调用5软件是指( )。
A.程序B.程序和文档C.算法加数据结构D.程序、数据与相关文档的完整集合6信息隐蔽的概念与下述哪一种概念直接相关( )。
A.软件结构定义B.模块独立性C.模块类型划分D.模块耦合度7下列选项中,不属于模块间耦合的是( )。
A.数据耦合B.标记耦合C.异构耦合D.公共耦合8对于现实世界中事物的特征,在实体一联系模型中使用( )。
A.属性描述B.关键字描述C.二维表格描述D.实体描述9下列数据模型中,具有坚实理论基础的是( )。
A.层次模型B.网状模型C.关系模型D.以上三个都是10关系表中的每一横行称为一个( )。
A.元组B.字段C.属性D.码11下列叙述中错误的是( )。
A.一个C语言程序只能实现一种算法B.c程序可以由多个程序文件组成C.C程序可以由一个或多个函数组成D.一个C函数可以单独作为一个C稃序文件存存12C语言源程序名的后缀是( )。
A.CB.exeC.obiD.ep13以下选项中不能用作C程序合法常量的是( )。
14表达式a+=a一;a=9的值是( )。
A.0B.-9C.18D.915若有定义语句:A.1B.1.9C.2D.2.416阅读以下程序该程序在编译时产生错误,其出错原因是( )。
计算机二级考试c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,下面哪个选项是合法的标识符?A. 2abcB. abc123C. _abcD. abc$答案:C2. 在C语言中,下面哪个运算符具有左结合性?A. 赋值运算符B. 逻辑运算符C. 位运算符D. 关系运算符答案:A3. 下面哪个函数用于实现字符串的复制?A. strcpyB. strcatC. strlenD. strcmp答案:A4. 下面哪个选项是正确的整型常量的表示方法?A. 1234BB. 0x1234C. 1234DD. 01234答案:D5. 下面哪个选项是合法的实型常量的表示方法?A. 123.B. 123.C. 123.D. 123.答案:C6. 在C语言中,下面哪个函数用于实现字符串的连接?A. strcpyB. strcatC. strlenD. strcmp答案:B7. 下面哪个选项是正确的关于一维数组的描述?A. 数组名是一个指向数组首元素的指针B. 数组名是一个指向数组首元素的指针C. 数组名是一个指向数组首元素的指针D. 数组名是一个指向数组首元素的指针答案:A8. 下面哪个选项是正确的关于二维数组的描述?A. 二维数组可以看作是多个一维数组的组合B. 二维数组可以看作是多个一维数组的组合C. 二维数组可以看作是多个一维数组的组合D. 二维数组可以看作是多个一维数组的组合答案:A9. 在C语言中,下面哪个函数用于实现字符串的比较?A. strcpyB. strcatC. strlenD. strcmp答案:D10. 下面哪个选项是合法的C语言语句?A. if(条件) {B. while(条件)C. do {D. }答案:D二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的存储空间为_____个字节。
答案:42. C语言中,定义一个整型变量的一般形式为_____。
答案:int 变量名;3. C语言中,定义一个实型变量的一般形式为_____。
2015年9月全国计算机等级考试二级《C++》真题(总分100, 考试时间120分钟)一、选择题(每小题1分,共40分)1. 有如下程序:#include<iostroam>using namespace std;class Base{protected:Base(){cout<<’A’;}Base(char C){cout<<c;}};class Derived:public Base{public:Derived(char C){tout<<C;}};int main(){Derived dl(’B’);retum 0;}执行这个程序的输出结果是()。
A BB BAC ABD BB该问题分值: 1答案:C本题考查派生类的构造函数和析构函数.在定义一个派生类的对象时,先调用基类的构造函数,然后再执行派生类的构造函数;对象释放时,先执行派生类的析构函数,再执行基类的析构函数。
本题中定义了一个派生类对象d1,首先执行基类的构造函数,输出A;然后执行派生类的构造函数,输出B。
所以答案为C。
2. 下列符号中能够作为C++标识符的是()。
A CoflstB 2aC _shapeD .Count该问题分值: 1答案:C本题考查c++标识符的命名规则,其规则有如下几点:①所有标识符必须由字母、数字或下画线组成,且必须由字母或下画线开头;②所有标识符不能使用c++已有的关键字;③大、小写字母表示不同意义,即代表不同的标识符。
选项A是关键字,选项B不能以数字开头,选项D包含了字符”一”,且不能以此字符开头。
故答案为C。
3. 有如下程序:#include<iostream>using namespace std;class Base{private:void funl()const{tout<<”funl”;}protected:void fun2()const{tout<<”fun2”;}public:void fun3()const{cout<<”fhll3”;}};class Derived:protected Base{public:void fhn4()const{cout<<”filn4”;}};int main(){Derived obj;obj.funl();//①obj.fun2();//②obj.furd();//③obj.fun4();//④return U:}其中有语法错误的语句是()。
全国计算机等级考试二级C语言笔试试题及答案解析试题一:选择题1. 下列关于C语言的说法,错误的是()A. C语言是一种高级语言B. C语言具有跨平台性C. C语言编译器可以直接生成机器码D. C语言是一种解释型语言答案:D解析:C语言是一种高级语言,具有跨平台性。
编译器将C语言源程序编译成目标代码,然后通过链接器生成可执行文件,这个过程生成的机器码可以被计算机直接执行,因此C语言不是解释型语言。
2. 以下哪个选项不是C语言的基本数据类型?()A. intB. charC. floatD. string答案:D解析:C语言的基本数据类型包括整型(int)、字符型(char)、浮点型(float)和双精度浮点型(double)。
string不是C语言的基本数据类型,而是由字符数组构成的一种自定义类型。
试题二:填空题1. 在C语言中,每个语句的结尾必须使用()符号。
答案:分号(;)解析:在C语言中,每个语句的结尾必须使用分号(;)作为结束符,表示一个语句的结束。
2. 以下程序的输出结果是()。
```c#include <stdio.h>int main() {int a = 5;int b = 3;printf("%d\n", a % b);return 0;}```答案:2解析:在C语言中,取模运算符(%)用于计算两个整数相除的余数。
在本题中,5除以3的余数为2,因此输出结果为2。
试题三:编程题1. 编写一个C程序,实现以下功能:从键盘输入10个整数,计算并输出这些整数的平均值。
```c#include <stdio.h>int main() {int i, num;float sum = 0.0, average;for (i = 0; i < 10; i++) {printf("请输入第%d个整数:", i + 1);scanf("%d", &num);sum += num;}average = sum / 10;printf("这10个整数的平均值为:%.2f\n", average);return 0;}```解析:本题考查了循环语句、输入输出函数等基本知识。
9月计算机二级C语言考试试题附答案C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
以下是关于计算机二级C语言考试试题附答案,希望大家认真练习!第1题给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每个字符,紧随其后重复出现一次,形成一个新串放在t中,t中字符按原字符串中字符顺序排列。
例如:当s中的字符串为:"ABAABBCCDDEE"。
则t中的字符串应为:"AABBCCDDEE"。
请改正函数fun中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!Modi1.c#include#include#include/************found************/void fun (char s,char t) /参考答案:void fun (char *s,char *t)/ { int i, sl;sl = strlen(s);for (i=0; i{ t[2*i] = s[i];t[2*i+1] = s[i];}/************found************/t[2*sl] = '0'; /参考答案:t[2*sl] = '\0';/}main(){ char s[100], t[100];printf("\nPlease enter string s:"); scanf("%s", s);fun(s, t);printf("The result is: %s\n", t);}第2题给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每个字符,紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中逆排列。
程序功能:输入一个正整数,将其各位上为偶数的数字去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并将其输出到文件out1.txt中。
例如,输入:134456779,输出到文件:135779。
代码:#include <stdio.h>int main(void){long n;intk,i=1;int _____(1)_____;FILE *fp;fp=fopen("out1.txt","w");scanf("%ld",&n);while ( _____(2)_____ ){k = _____(3)_____;n = n/10;if (k%2 == 1){z = z+k*i;i = 10*i;}}fprintf(fp,"%d\n",z);_____(4)_____; /* 关闭文件 */return 0;}__程序功能:从键盘输入一个字符串和一个字符,统计字符串中该字符出现的次数,并输出结果。
例如,输入字符串:aBEddfghDdd,输入字符:d,输出结果:4。
代码:#include <stdio.h>int num(char str[])charch;inti=0,count=0;printf("输入字符:");scanf("%c",&ch);while( _____(1)_____ ){if( _____(2)_____ )count++;i++;}return count;}int main(void){charstr[80];int n;printf("输入字符串:");gets( _____(3)_____ );n = _____(4)_____;printf("输出结果: %d\n",n);return 0;}(一)程序调试题(3小题,第1、2小题各3处错,第3小题4处错,每错误点3分,共30分)1. 程序调试题1调试要求:下列程序(C:\KS\B_2_1.c)包含3个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*******/字样的注释),使其运行能得到正确的结果。
全国计算机等级考试二级笔试题基础知识和C语言程序设计(考试时间120分钟,满分100分)2015年9月21日一、选择题((1)-(40)每小题1分,(41)-(50)每小题2分,共60分)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题卡相应位置上涂黑,答在试卷上不得分。
(1) 应用软件是指A) 所有能够使用的软件B) 能被各应用单位共同使用的某种软件C) 所有微机上都应使用的基本软件D) 专门为某一应用目的而编制的软件(2) 下列述叙中错误的是A) 计算机要经常使用不要长期闲置不用B) 为了延长计算机的寿命,应避免频繁开关计算机C) 在计算机附近应避免磁场干扰D) 计算机用几小时后,应关机一会儿再用(3) 下列字符中,ASCII码值最小的是A) A B) a C) Z D) x(4) 用晶体管作为电子器件制成的计算机属于A) 第一代B) 第二代C) 第三代D) 第四代(5) 下列各不同进制的四个无符号数中,最小的数是A) (11011001)2B) (37)8C) (75)10D) (2A)16(6) 二进制数1110111.11转换成十六进制数是A) 77.C B) 77.3 C) E7.C D) E7.3(7) 下列各无符号十进制数中,能用八位二进制表示的是A) 296 B) 333 C) 256 D) 199(8) 计算机的软件系统可分类为A) 程序与数据B) 系统软件与应用软件D) 操作系统与语言处理程序D) 程序、数据与文档(9) 486机中的CPU同时能处理的二进制位数为A) 8 B) 16 C) 32 D) 64(10) 在使用计算机的过程中,需要重新启动DOS,则要A) 按Ctrl+Break键B) 按^C键C) 按Ctrl+Alt+Del键D) 按^H键(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机电源;②将该软盘插入A驱动器;③关好A驱动器门。
则冷启动的操作顺序应为A) ①→②→③B) ③→②→①C) ②→①→③D) ②→③→①(12) 设当前盘中某一文件路径为\A\C\B\ABC.C,当前目录为\A。
下列命令中错误的是A) CD.. B) RD \A\C\BC) TYPE \A\C\B\ABC.C D) TYPE C\B\ABC.C(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件PQ.BAS。
现要查看文件PQ.BAS的内容,应使用命令A) TYPE \AB PQ.BAS B) TYPE \AB\PQ.BASC) TYPE \PQ.BAS D) DIR \AB\PQ.BAS(14) 自动批处理文件必须放在A) C盘根目录中B) A盘根目录中C) 启动盘的任一个目录中D) 启动盘的根目录中(15) 设当前盘当前目录为C:\USER\XY\P,且当前盘当前目录为空,则下列命令中能正确执行的是A) RD C:\USER\XY\P B) RD USER\XY\PC) MD \USER\XY\P\USER D) MD \USER\XY\P\X\Y(16) 下列DOS命令中,合法的是A) DISKCOMP A.C B.C B) TYPE A.C >> B.CC) COMP A: B: D) COMP A: A:(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错误的是A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:(18) 下列DOS命令中错误的是A) TYPE A.TXT>PRN B) TYPE A.TXT PRNC) COPY *.TXT PRN D) COPY CON PRN(19) 下列四组DOS命令中,互相等价的一组是A) COPY A:*.* B:与DISKCOPY A: B:B) COPY ABC.TXT+XYZ.TXT与TYPE XYZ.TXT >> ABC.TXTC) COPY ABC.TXT+XYZ.TXT XYZ.TXT与COPY XYZ.TXT+ABC.TXTD) TYPE *.FOR>CON与COPY *.FOR CON(20) 设C盘目录结构如下:且C盘根目录下文件AUTOEXEC.BAT的内容为CD FORTRANCD \TC如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是A) COPY A:\*.C B) COPY A:\*.C TCC) COPY A:\*.C FORTRAN D) CD USER(21) C语言提供的合法的数据类型关键字是A) Double B) short C) integer D) Char(22) 在C语言中,合法的长整型常数是A) 0L B) 4962710 C) 0.054838743 D) 2.1869e10(23) 表达式:10!=9的值是A) true B) 非零值C) 0 D) 1(24) 合法的C语言中,合法的长整型常数是A) '\t' B) "A" C) 65 D) A(25) 若有说明和语句:int a=5;a++;此处表达式a++的值是A) 7 B) 6 C) 5 D) 4(26) 在下列选项中,不正确的赋值语句是A) ++t; B) n1=(n2=(n3=0)); C) k=i==j; D) a=b+c=1;(27) 若有说明:int i,j=7, *p=&i;,则与i=j;等价的语句是A) I= *P; B) *P=*&J; C) i=&j; D) i=* *p;(28) 不能把字符串:Hello!赋给数组b的语句是A) char b[10]={'H','e','l','l','o','!'};B) char b[10];b="Hello!";C) char b[10];strcpy(b,"Hello!");D) char b[10]="Hello!";(29) 若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c](30) 若有以下说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为6的表达式是A) *p+6 B) *(p+6) C) *p+=5 D) p+5(31) 若有以下说明:int w[3][4]o={{0,1},{2,4},{5,8}};int(*p)[4]=w;则数值为4的表达式是A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1](32) 若程序中有下面的说明和定义struct abc{int x;char y;}struct abc s1,s2;则会发生的情况是A) 编译进错B) 程序将顺利编译`连接`执行C) 能顺利通过编译`连接`但不能执行D) 能顺利通过编译`但连接出错(33) 能正确表示a≥10或a≤0的关系表达式是A)a>=10 or a<=0 B)a>=10│a<=0C)a>=10││a<=0 D)a>=10 ││a<=0(34) 下面程序的输出是main(){ int x=3,y=6,a=0;while(x++!=(y+=o1)){ a+o=1;if(y#includemain(){ char ss[10]="12345";strcat(ss,"6789");gets(ss);printf("%s\n",ss);}A) ABC B) ABC9 C) 123456ABC D) ABC456789(35) 下面程序的输出是main(){ char *a="12134211";int v1=0,v2=0,v3=0,v4=0,k;for(k=0;s[k];k++)switch(s[k]){ default:v4++;case '1': v1++;case '3': v3++;case '2': v2++; }printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8(36) 下面程序的输出是main(){int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A) k=11,k=12,k=11 B) k=11,k=13,k=13C) k=11,k=013,k=0xb D) k=11,k=13,k=b(37) 若有以下程序段,w和k都是整型变量:┆w=k;LB: if(w==0) go to LE;w--;printf("*");goto LB;LE: ┆则不能与上面程序段等价的循环语句是A)for(w=k;w!=0;w--) printf("*"); B)for(w=k;w;--w)printf("*");C)w=k; D)w=k;while(w--!=0)printf("*");w++; do{ w--;printf("*");}while(w!=0);(38) 若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是A)*p=&a; scanf("%lf",p); B)p=(double *)malloc(8);scanf("%f",p);C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p);(39) 当执行下面程序且输入:ABC时,输出的结果是#include<stdio.h>#include<string.h>main(){ char ss[10]="12345";gets(ss);printf("%s\n",ss); }A) ABC B) ABC9 C) 123456ABC D) ABC456789(40) 若有以下的说明和语句:main(){int t[3][2], *pt[3],k;fpr(k=o; k<3;k++)pt[k]=t[k];}则以一选项中能正确表示t数组元素地址的表达式是A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2](41) 下面程序输出数组中的最大值,由s指针指向该元素.main(){ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s;flr(p=a, s=a; p-a<10; p++)if(---?---)s=p;printf("The max:%d",*s):}则在if语句中的判断表达式应该是A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s(42) 下面程序的输出是#include<string.h>main(){ char*a="abcdefgh";fun(a);puts(a); }fun (char * s){ int x=0,y;char c;for(y=strlen(s)-1;x<y;x++,y--) { c=s[x];s[x]=s[y];s[y]=c;} }A)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是A)3 B)4 C)5 D)6(44) 下面程序的输出是main(){ int t=1; fun(fun(t));}fun(int h){ static int a[3]={1,2,3};int k;for(k=0;k<3;k++) a[k]+=a[k]-h;for(k=1;k<3;k++) printf("%d",a[k]);printf("\n"); return(a[h]);}A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,1,5,9, 1,3,5, 0,4,8, -1,3,7,(45) C语言中,函数的隐含存储类别是A)auto B)static C)extern D)无存储类别(46) 下面程序的输出是int w=3;main(){ int w=10; printf("%d\n",fun(5)*w); }fun(int k){ if(k==0) return w;return(fun(k-1)*k); }A)360 B)3600 C)1080 D)1200(47) 要求函数的功能是交换x和y中的值,且通过正确调用返回交换结果。