C语言选择题(最全版试题)【错题】
- 格式:docx
- 大小:15.85 KB
- 文档页数:5
C语言部分一、选择题(每小题2分,共10分)(下在各小题,分别有一个或多个正确答案,请将所有正确答案的编号,填写在该小题题干后的括号内。
错选或漏选均不得分)。
1、若定义:int a[2][3]{0,2,4,6,8,10};以下描述正确的有( A,C,D,E )A、*(a+1)为元素6的地址这里a+1=a[1]的地址;*(a+1)的值是6,故A正确。
B、*(a[1]+1)的值为2为8,故B不正确C、**(a+1)+2的值为8这里a+1是一个指针,指向的是a[1]. *(a+1)为a[1],a[1]指向的是a[1][0]. **(a+1)为6,加2得8,故C正确;D、a[0]与a相同因二者都是指针,指针的地址都是指向数组中的第一个元素的地址,故D正确。
E、a[1][2]的值为10它是指第二行的第三个元素,为10,正确2、对函数的正确使用方法描述( A,C,D )。
A、用数组做函数参数时,必须在主调函数和被调函数中分别定义数组B、实参数组元素和形参数组元素类型可以不一致C、形参数组长度可以不指定D、形参数组长度可以大于实参数组长度E、数组名做参数属于值传递3、对静态变量的正确描述( A,B,D,E )A、静态局部变量在静态存储区内分配单元()B、静态外部变量可以赋初值,也可以不赋初值C、静态外部变量的作用与外部变量相同D、静态局部变量在函数调用结束时,仍保存其值,不会随着消失。
E、静态局部变量只赋一次初值4、下列描述正确的是( A ,C)。
A、由main 函数及其参数argc和* argv[]可以实现命令行方式B、使用fclose关闭文件时,先释放文件指针,再写缓冲区数据到文件中//先写缓冲区数据到文件中,再释放文件指针C、字符数组并不要求它的最后一个字符是‘\0’//是的,以字符指针指向的字符串才要求,因为只有这样,才能知道字符串的长度,而在字符数组中,不用\0,一样可以知道到哪里是字符数组的结尾。
单项选择题导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。
本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。
在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。
对于掌握不准的问题,应该通过上机实验来检验.【1.1】以下不正确的C语言标识符是____。
A)int B)a_1_2 C) ab1exe D) _x【1。
2】以下是正确的C语言标识符是____.A) #define B)_123 C)%d D) \n【1。
3】下列四组字符串中都可以用作C语言程序标识符的一组是。
••• A) print B) i\am C) Pxq D)str_l••• _3d one_half My—>book Cpp••• oodb start$it line#pow••• aBc 3pai His。
age while【1.4】下面各选项组中,均是C语言关键字的组是。
A)auto,enum,include B) switch,typedef,continueC)signed,union,scanf D) if,struct,type【1.5】下列不属于C语言关键字的是。
A)default B) register C)enum D)external【1。
6】C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始B) 程序文件的最后C) 它所调用的函数的前面D)程序文件的任何位置【1.7】下列关于C语言的叙述错误的是____A)大写字母和小写字母的意义相同B) 不同类型的变量可以在一个表达式中C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D)同一个运算符号在不同的场合可以有不同的含义【1。
8】在C语言中,错误的int类型的常数是。
A)32768 B)0 C)037 D) 0xAF【1.9】执行语句printf(”%x”,—1);屏幕显示____。
第一单元C语言概述一、选择题1、C语言中主函数的个数为(A)个。
A)1 B)2C)无穷个D)任意个2、以下关于C语言描述错误的是(D)。
A)一个C程序总是从main函数开始执行TB)每个语句和数据声明的最后必须有一个分号TC)C语言的注释符是以“/*”开始并以“*/”结束的TD)一个C程序可以包含多个main函数F3、C 语言源程序文件后缀为(C )。
A).EXE B).OBJ C).C D).ASM4、C语言是由(C )组成的。
A)子程序B)主程序与子程序C)函数D)过程5、C语言属于(B )语言A)机器语言B)汇编语言C)高级语言D)面向对象语言第二单元C语言基础一、选择题1、C语言中普通整型变量int在内存中占(B )字节。
A)1 B)2 C)3 D)42、下列不是C语言基本数据类型的是(A )。
A)字符型B) 整型C) 浮点型D) 结构体3、有关自增、自减运算,以下只有(D )是正确的。
A) ---f B) ++78 C) a—b++ D) d++4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (A<B && !C>B)的值是(A )。
A)0 B)10 C)1 D)55、若有x=1,y=2,z=3,则表达式(x<y?x:y)= =z的值是(D )。
A)1 B)2 C)3 D)06、判断char型变量ch是否为大写字母的正确表达式是(C )。
A) ‘A’<=ch<=‘Z’B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)7、判断整型变量digit是否为数字的正确表达式是(C )。
A) ‘0’<=ch<=‘9’B) (ch>=‘0’)&(ch<=‘9’)C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch)8、一个C程序的执行是从(A )。
c语言复习题面试题考试题-全不定项选择题(针对以下题目,请选择最符合题目要求的答案,每道题有一项或二项正确答案。
针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。
题量为50道,每题2分,总分为100分。
)第一章1)对于C语言的描述说法错误的是()。
A、它是一种计算机程序设计语言B、它既有高级语言的特点,又具有汇编语言的特点C、它不可以作为系统设计语言,编写系统应用程序D、它可以作为应用程序设计语言,编写不依赖计算机硬件的应用程度2)在C语言中,下图所示的流程图符号代表的是()。
(选择一项)A、程序开始或结束B、判断和分支C、输入/输出指令D、计算步骤3、下列关于算法的说法正确的是()(选择二项)A、算法必须在有限步骤内解决问题B、算法可能需要无穷步才能解决问题C、算法应该有确定的结果D、算法的计算结果无法预知4、在C中,多行注释使用()符号结尾(选择一项)A、/某B、某/C、某D、ocB、.t某tC、.pptD、.c或.cpp7、以下对C语言源程序的结构特点描述错误的是()(选择一项)A、一个C语言源程序可以由一个或多个源文件组成B、每一个源文件只能有一个函数组成C、一个源程序有且只有一个main函数充当主函数D、每一个说明,每一个语句都必须以分号结尾8、下列对C语言头文件描述错误的是()(选择一项)A、中包含了标准的输入输出函数以及字符串出来函数B、中包含了数学运算函数C、中包含了各类基本函数D、中包含了时间和日期的处理函数9、从开发C语言程序到让计算机可以执行命令,需要经过以下步骤中正确的是()(选择一项)A、编辑编译预处理连接加载执行B、编辑预处理编译连接加载执行C、编辑预处理连接编译加载执行D、编辑预处理连接编译加载执行10、在C语言中,下图所示的流程图符号代表的是()。
(选择一项)A、程序开始或结束B、判断和分支C、输入/输出指令D、处理过程11、在C语言中,下图所示的流程图符号代表的是()。
程序设计基础(C语言版)习题第01章绪论一.选择题1.以下叙述中正确的是________。
A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整【解析】程序设计通常分为问题建模、算法设计、编写代码和编译调试四个阶段。
所以选项A)、B)、C)说法都不完整。
2.以下关于简单程序设计的步骤和顺序的说法中正确的是。
A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构【解析】设计一个能解决实际问题的计算机程序需要经过以下几个过程:①建立模型。
②算法设计:给出解决问题的步骤,即算法。
③算法表达:选择一种表达算法的工具,对算法进行清晰的表达。
④编写程序:选择一种程序设计语言,把以上算法程序化,这称为编写程序。
⑤程序调试:对编写好的程序进行调试,修改程序中的错误。
⑥程序文档编写与程序维护。
综上所述,B)选项是符合上述描述的,其他选项不恰当。
3,叙述中正确的是________。
A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句C)简单C语句必须以分号结束D)C语句必须在一行内写完【解析】函数是C程序的基本组成单位;C语言书写风格很自由,不但一行可以写多个语句,还可以将一个语句写在多行中。
故本题答案为C)。
4.以下叙述中正确的是。
A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句C)C程序书写格式自由,一个语句可以写在多行上D)用C语言编写的程序只能放在一个程序文件中【解析】在C语言中,注释可以加在程序中的任何位置,选项A)错误。
C程序可以分模块写在不同的文件中,编译时再将其组合在一起,选项D)错误。
C语言选择题精选*1、A一个C程序的执行是从_____。
A)本程序的main函数开始,到main函数结束√B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束*2、C以下叙述正确的是:A)在C程序中,main函数必须位于程序的最前面×B)C程序的每行中只能写一条语句×C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误×*3、D以下叙述不正确的是。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面*4、CC语言规定:在一个源程序中,main函数的位置。
A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后*5、B一个C语言程序是由A)一个主程序和若干子程序组成 B)函数组成C)若干过程组成 D)若干子程序组成*6、A在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为A)char<int <1ong int<=float<doubleB)char=int<1ong int<=float<doubleC)char< int <1ong int=float=doubleD)char=int =1ong int<=float<double*7、C若x,i,j和k都是int型变量,则执行下面表达式后x的值为x=(i=4,j=16,k=32)A)4 B)16 C)32 D)52*8、B假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是:A)7 B)8 C)6 D)2*9、A下列四组选项中,均不是C语言关键字的选项是A)define B)getc C)include D)whileIF char scanf gotype printf case pow*10、B下面四个选项中,均是C语言关键字的选项是A)auto B)switch C)signed D)ifenum typedef union structinclude continue scanf type*11、C下面四个选项中,均是不合法的用户标识符的选项是。
一、单项选择题(每小题2分,共40分)1、sizeof(float)是()A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);为了把100和分别赋给i和f,则正确的输入为()。
A. 100B. i=100,f=765.12C. 100<回车>D. x=100y=3、#include<>voidmain(){inta=3,b=2,c=1;intx=10,y=20;if(a<b)if(b!=0)if(!x)y=1;elseif(x)y=0;y=-1;printf("%d",y);}上面的C程序的输出结果是()。
A. 20B. 1C. 0D. -14、C语言中,while和do…while循环的主要区别是()。
A. do…while的循环体至少无条件执行一次B. while的循环控制条件比do…while的循环控制条件严格C. do…while允许从外部转到循环体内D. do…while的循环体不能是复合语句5、执行下面的C程序段后,输出结果是()。
inta=5;while(a--);printf("%d",a);A. 54321B. 4321C. 0D. -16、在C语言中,()是在所有函数外部声明的。
A. 全局变量B. 局部变量C. 形参D.实参7、分析下面的C程序:#include<>voidmain(){intnum=0;while(num<=2){num++;printf("%d",num);}}输出结果是()。
A. 123B. 012C. 23D. 128、下面的C语言代码段的输出结果是()。
C语言试题及答案解析(二)班级姓名学号____________一、选择题(20分)1.1966年,Bohra和Jacopini提出的三种基本程序设计结构是:________A.if、while和for; B. switch、do-while和for;C.while、do-while和for;D.顺序结构、分支结构和循环结构。
2.算法的特征不包括:______。
A.有穷性 B.可行性 C.确定性 D.有1个或者多个输入。
3.C语言源程序的基本组成单位是______。
A.函数 B. 语句 C. 声明和语句 D. 文件4.下列标识符中,只有______是合法的。
A.if B. 3ab C. Int D. A-45.下列常量中,只有______是合法的。
A.3e-0.3 B. ‘abc’ C. 02a1 D. ‘\377’6.下列说法中正确的是:______。
A.C语言中的for语句的三个表达式都可以省略,而且分号也可以省略。
B.宏替换比函数调用的执行速度慢。
C.实质上,C语言中的指针就是一个变量的地址。
D.C语言中的任何函数都可以由程序员命名。
7.C语言中,运算对象必须是整型的运算符是_______。
A./ B. % C. + D. -8.以下叙述中错误的是_______。
A.C语句必须以分号结束B.复合语句在语法上被看作一条语句C.空语句出现在任何位置都不会影响程序运行D.赋值表达式末尾加分号就构成赋值语句9.以下叙述中正确的是_______。
A.调用printf函数时,必须要有输出项B.使用putchar函数时,必须在之前包含头文件stdio.hC.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码10.以下关于函数的叙述中正确的是_______。
A.每个函数都可以被其它函数调用(包括main函数)B.每个函数都可以被单独编译C.每个函数都可以单独运行D.在一个函数内部可以定义另一个函数11.有以下程序段typedef struct NODE{int num;struct NODE *next;} OLD;以下叙述中正确的是_______。
C语言程序设计试题_练习题一、选择题:(20分,每题2分)1.以下不正确的C语言标识符是()。
A.ABCB.abcC.a_bcD.ab.c2.C程序是由构成的。
A.主程序与子程序B.主函数与若干子函数C.一个主函数与一个其它函数D.主函数与子函数3.以下说法中正确的是:A.在C语言中,实参与其对应的形参各占独立的存储单元;B.在C语言中,实参与其对应的形参共占同一个存储单元;C.在C语言中,只有当实参与其对应的形参同名时,才共占同一个存储单元;D.在C语言中,形参是虚拟的,不占存储单元。
4.设n=3;则n++的结果是()。
A.2B.3C.4D.55.设整型变量n=10,i=4,则赋值运算n%=i+1执行后,n的值是()。
A.0B.1C.2D.36.凡是函数中未指定存储类别的局部变量其隐含的存储类别是()。
A.自动(auto)B.静态(tatic)C.外部(e某tern)D.寄存器(regiter)7.在while(某)语句中的某与下面条件表达式等价的是:A.某==0B.某==1C.某!=1D.某!=08.若有以下说明和语句:tructworker{intno;~char某name;}work,某p=&work;则以下引用方法不正确的是()。
A.work.noB.(某p).noC.p->noD.work->no9.以下对二维数组进行正确初始化的是()。
A.inta[2][3]={{1,2},{3,4},{5,6}};B.inta[][3]={1,2,3,4,5,6};C.int a[2][]={1,2,3,4,5,6};D.inta[2][]={{1,2},{3,4}};10.二维数组a有m列,则在a[i][j]之前的元素个数为:A)j某m+iB)i某m+jC)i某m+j-1二、给出下列程序的运行结果:(20分,前四题每题3分,后两题每题4分)1.#include<tdio.h>main(){inti=16,j,某=6;j=i+++1;某某=i=j;printf(“%d,%d\n”,j,某);}运行结果是:2.#include<tdio.h>#include<math.h>main(){inta=1,b=4,c=2;float某=10.5,y=4.0,z;z=(a+b)/c+qrt((double)y)某1.2/c+某;printf(“%f\n”,z);}运行结果是:3.#include<tdio.h>main(){inta,b,c,d;a=c=0;b=1;d=20;if(a)d=d-10;eleif(!b)if(!c)d=25;eled=15;printf(“d=%d\n”,d);}运行结果:4.main(){inti=10;witch(i){cae9:i+=1;cae10:i+=1;cae11:i+=1;}printf(“%d”,i);}运行结果:5.#include<tdio.h>main(){inta[]={1,2,3,4},i,j,=0;j=1;for(i=3;i>=0;i--){=+a[i]某j;j=j某10;}printf("=%d\n",);}运行结果:6.func(int某){某=20;}main(){int某=10;func(某);printf(“%d”,某);}运行结果:三、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。
C语言试卷(含答案)一、单项选择题(每小题2分,共40分)1、sizeof(float)是()A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);为了把100和分别赋给i和f,则正确的输入为()。
A. 100B. i=100,f=765.12C. 100<回车>D. x=100y=3、#include<>voidmain(){inta=3,b=2,c=1;intx=10,y=20;if(a<b)< p="">if(b!=0)if(!x)y=1;elseif(x)y=0;y=-1;printf("%d",y);}上面的C程序的输出结果是()。
A. 20B. 1C. 0D. -14、C语言中,while和do…while循环的主要区别是()。
A. do…while的循环体至少无条件执行一次B. while的循环控制条件比do…while的循环控制条件严格C. do…while允许从外部转到循环体内D. do…while的循环体不能是复合语句5、执行下面的C程序段后,输出结果是()。
inta=5; while(a--);printf("%d",a);A. 54321B. 4321C. 0D. -16、在C语言中,()是在所有函数外部声明的。
A. 全局变量B. 局部变量C. 形参D.实参7、分析下面的C程序:#include<>voidmain(){intnum=0;while(num<=2){num++;printf("%d",num);}}输出结果是()。
A. 123B. 012C. 23D. 128、下面的C语言代码段的输出结果是()。
第一部分 C语言基础一、判断题1.一个C程序的执行总是从该程序的main函数开始,在main函数最后结束。
【】2.main函数必须写在一个C程序的最前面。
【】3.一个C程序可以包含若干的函数。
【】4.C程序的注释部分可以出现在程序的任何位置,它对程序的编译和运行不起任何作用。
但是可以增加程序的可读性。
【】5.C程序的注释只能是一行。
【】6.C程序的注释不能是中文文字信息。
【】第二部分数据类型、运算符及表达式一、选择题1.合法的字符常量是( )。
A)‘\t’B) “A” C)‘\028’D)’\x32’2.是C语言提供的合法的数据类型关键字。
A) Float B) signed C) integer D)Char3.在以下各组标识符中,不合法的标识符是。
(1)A)B01 B)table_1 C) 0_t D) k%(2)A)Fast_ B) void C)pbl D)<book>(3)A)xy_ B)longdouble C)*p D)CHAR(4) A) sj B)int C)_xy D)w_y235.下面选项中,不是合法整型常量的是。
A)160 B)-0xcdg C)-01 D)-0x48a6.假设int型在内存中占16位,判断int x = 0xaffbc;x的结果是。
A)赋值非法 B)溢出 C)为affb D)为ffbc7.下面选项中,均是合法浮点数的是。
(1)A)+1e+1 B)-.60 C)123e D)-e3(2)A)5e-9.4 B)12e-4 C)1.2e-.4 D).8e-4(3)A)03e2 B)-8e5 C)+2e-1 D)5.e-08.在C语言中,参加运算的数必须是整数的运算符是。
A)/ B)* C)% D) =9.在C语言中,字符型数据在内存中以形式存放。
A)原码 B)BCD码 C)反码 D)ASCII码10.下列语句中,符合语法的赋值语句是。
A)a=7+b+c=a+7; B)a=7+b++=a+7;C)a=(7+b,b++,a+7); D)a=7+b,c=a+7;12.对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中,是正确的。
参考答案一、单项选择题:(10分,每题2分)1.char (*p)[10];该语句声明了一个:A。
A) 指向含有10个元素的一维字符型数组的指针变量pB) 指向长度为10的字符串的指针变量pC) 有10个元素的指针数组p,每个元素可以指向一个字符串D) 有10个元素的指针数组p,每个元素存放一个字符串2.以下错误的描述是(C )。
A)不同的函数中可以使用相同名字的变量,互不干扰B)形式参数都是局部变量C)函数定义可以嵌套D)C语言中的函数参数传递都是单向值传递3.以下对二维数组进行正确初始化的是( B )。
A)int a[2][3]={{1,2},{3,4},{5,6}};B)int a[][3]={1,2,3,4,5,6};C)int a[2][]={1,2,3,4,5,6};D)int a[2][]={{1,2},{3,4}};4.已知:union{double k;char c;float a;}test;则sizeof(test)的值是:A。
A)8 B)1 C)4 D)135.设有语句int a = 3; 执行了语句a += a -= a *= a; 后,变量a的值是____B____。
A) 3 B) 0 C) 9 D) -12二、写出下列程序的运行结果。
(10分,每题2分,第2、4、5题打印结果正确但是没有换行时,给1分)1.#include <stdio.h>main(){char c;while ((c = getchar()) != '$'){putchar(c);}printf("End!\n");}程序运行时输入abcdefg$abcdefg↙则程序的运行结果为abcdefgEnd!2.#include<stdio.h>void Fun(int *y){printf("*y = %d\n", *y);*y = 20;printf("*y = %d\n", *y);}main(){int x = 10;printf("x = %d\n", x);Fun(&x);printf("x = %d\n", x);}运行结果是:x = 10*y = 10*y = 20x = 203.#include <stdio.h>main(){int n;for (n=1; n<=5; n++){if (n % 2){printf("*");}else{continue;}printf("#");}printf("$\n");}运行结果是:*#*#*#$4.#i nc lu de <st d io.h>st ru ct d at e{in t y ea r;in t m on th;in t d ay;};vo id f un c(st r uc t da te *p){p->y ea r = 2006;p->m on th = 11;p->d ay = 18;}ma in(){st ru c t da te d;d.ye a r = 2005;d.mo n th = 12;d.da y = 10;pr in t f(“%d,%d,%d\n”,d.ye ar,d.mo nt h,d.da y);fu nc(&d);pr in t f(“%d,%d,%d\n”,d.ye ar,d.mo nt h,d.da y);}运行结果是:2005,12,102006,11,185.#include<stdio.h>in t Fu n(in t x){st at ic i nt y= 10;y += x;re tu rn y;}ma in(){in t y= 0, k;fo r (k=0; k<2; k++){y = Fu n(k);pr in tf("y = %d\n", y);}}运行结果是:y = 10y = 11三、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。
C语言选择题1、用C语言编写的源文件经过编译,若没有产生编译错误,则系统将()。
——[单选题]A 生成可执行目标文件B 生成目标文件C 输出运行结果D 自动保存源文件正确答案:B2、一个C语言程序是由()——[单选题]A 一个主程序和若干子程序组成B 函数组成C 若干过程组成D 若干子程序组成正确答案:B3、C 程序的执行过程在下列说法中,▁▁▁▁▁ 是正确的。
——[单选题]A C 程序从第一个函数开始执行,直到最后一个函数结束B C 程序从第一个函数开始执行,直到主函数结束C C 程序从主函数开始执行,直到最后一个函数结束D C 程序从主函数开始执行,直到主函数结束正确答案:D4、结构化程序由三种基本结构组成,三种基本结构组成的算法——[单选题]A 可以完成任何复杂的任务B 只能完成部分复杂的任务C 只能完成符合结构化的任务D 只能完成一些简单的任务正确答案:A5、以下叙述中错误的是()——[单选题]A c语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令B c程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C 用c语言编写的程序称为源程序,它以ASCIl代码形式存放在一个文本文件中D c语言源程序经编译后生成后缀为.obj的目标程序正确答案:A6、以下叙述中,正确的是。
——[单选题]A C语言程序总是从第一个函数开始执行B 在C语言程序中,要调用的函数必须在main()函数中定义C C语言程序总是从main()函数开始执行D C 语言程序中的main()函数必须放在程序的开始部分正确答案:C7、C 风格的注释 C 风格的注释,也称块注释或多行注释,以▁▁▁ 开始,以▁▁▁ 结束。
——[单选题]A /* 和 */B { 和 }C [ 和 ]D ( 和 )正确答案:A8、空语句仅有一个▁▁▁▁▁ 的语句称为空语句。
——[单选题]A 逗号( , )B 句号( . )C 分号( ; )D 冒号( : )正确答案:C9、c语言规定,在一个源程序中,main函数的位置()。
第1章概述一、选择题1.一个C程序总是从( )开始执行。
A.程序的第一条执行语句B.主函数C.子程序D.主程序2.机器语言是用( )编写的。
A.二进制码B.ASCII码C.十六进制码D.国标码3.计算机可以直接识别的语言是( )。
A.CB.BASICC.汇编语言D.机器语言4.人们根据特定的需要,预先为计算机编制的指令序列称为( )。
A.软件B.文件C.语言D.程序5.以下叙述正确的是( )。
A.C语言比其他语言高级B.C语言程序可以不用编译就能被计算机识别执行C.C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D.C语言是面向对象的语言6.能将高级语言程序转换成目标语言程序的是( )。
A.调试程序B.汇编程序C.编译程序D.编辑程序7.下列关于C程序编译的描述中,错误的是( )。
A.在程序的编译过程中可以发现所有的语法错误B.在程序的编译过程中只能发现部分的语法错误C.在程序的编译过程中不能发现逻辑错误D.程序编译是调试程序的必经过程8.一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是( )。
A.有零个或多个输入B.有零个或多个输出C.有穷性D.可行性9.算法具有5个特性,以下选项中不属于算法特性的是( )。
A.有穷性B.简洁性C.可行性D.确定性10.以下叙述正确的是( )A.用C程序实现的算法必须要有输入和输出操作B.用C程序实现的算法可以没有输出但必须要有输入C.用C程序实现的算法可以没有输入但必须要有输出D.用C程序实现的算法可以既没有输入也没有输出11.在计算机中,算法是指( )。
A.查找方法B.加工方法C.解题方案准确而完整的描述D.排序方法二、填空题1.C语言程序的开发,个步骤。
2.C3.三种方式。
第2章数据类型和表达式一、选择题1.以下选项中合法的标识符是( )。
A.1_1B.1-1C._11D. 1_2.以下选项中可作为C语言合法常量的是( )。
2016年计算机二级c语言题库及答案一、选择题(每小题1分,共40小题,共40分)1.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。
现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。
A.20B.0或35C.15D.162.下列关于栈的叙述中,正确的是( )。
A.栈底元素一定是最后入栈的元素B.栈操作遵循先进后出的原则C.栈顶元素一定是最先入栈的元素D.以上三种说法都不对3.下列链表中,其逻辑结构属于非线性结构的是( )0、A.双向链表B.带链的栈C.二叉链表D.循环链表4.在关系数据库中,用来表示实体间联系的是( )。
A.网状结构B.树状结构C.属性D.二维表5.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。
则实体部门和职员间的联系是( )。
A.1:m联系B.m:n联系C.1:1联系D.m:l联系6.右两个关系R和S如下:则由关系R得到关系S的操作是( )。
A.自然连接B.并C.选择D.投影7.数据字典(DD)所定义的对象都包含于( )。
A.软件结构图B.方框图C.数据流图(DFD图)D.程序流程图8.软件需求规格说明书的作用不包括( )。
A.软件设计的依据B.软件可行性研究的依据C.软件验收的依据D.用户与开发人员对软件要做什么的共同理解9.下面属于黑盒测试方法的是( )。
A.边界值分析B.路径覆盖C.语句覆盖D.逻辑覆盖10.下面不属于软件设计阶段任务的是( )。
A.制订软件确认测试计划B.数据库设计C.软件总体设计D.算法设计11.以下叙述中正确的是( )。
A.在C语言程序中,main函数必须放在其他函数的最前面B.每个后缀为C的C语言源程序都可以单独进行编译C.在C语言程序中,只有main函数才可单独进行编译D.每个后缀为.C的C语言源程序都应该包含一个main函数12.C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是( )。
本卷共有4道大一、单项选择题(25道小题,共50分)1、以下说法中正确的是(C)(2分)A、C语言程序总是从第一个的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分2、一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是(B)(2分)A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性3、以下选项中,不合法常量的是(B)(2分)A、1.234e04B、1.234e0.4C、1.234e+4D、1.234e04、C语言中最简单的数据类型包括(B)(2分)A、整型、实型、逻辑型B、整型、实型、字符型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型5、能正确表示逻辑关系:“10≥=a≥=0”的C语言表达式是 (D)(2分)A、 10>=a>=0B、 a>=0 and a<=10C、 a>=0||a<=10D、 a>=0&&a<=106、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)(2分)A、 6.500000B、 6C、 5.500000D、 6.0000007、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B)(2分)A、 INPUT x、y、z;B、 scanf("%d%d%d",&x,&y,&z);C、 scanf("%d%d%d",x,y,z);D、 read("%d%d%d",&x,&y,&z);8、设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是(D)(2分)A、把x和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D、交换x和y中的值9、若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是(A)(2分)A、 0B、 0.5C、 1D、 210、设char ch='A';则ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( B )。
50203、以下()是正确的常量。
答案:D
A、E-5
B、1E5.1
C、'a12'
D、32766L
50207、以下()是错误的整型常量。
答案:B
A、-0xcdf
B、018
C、0xe
D、011
50301、若有定义:int a=2; 则正确的赋值表达式是()。
答案:A
A、a-=(a*3)
B、double(-a)
C、a*3
D、a*4=3
50308、若有定义:int x=2,y=3;float i;,则以下符合C语言语法的表达式是()。
答案:B
A、x=x*3=2
B、x=(y==1)
C、i=float(x)
D、i%(-3)
50402、下面叙述中,错误的是()。
答案:A
A、其算术运算对象不包含函数
B、%(模运算符)的运算对象只能为整型量
C、算术运算符的结合方向是"自左至右"
D、自加和自减运算符的结合方向是"自右至左"
50406、若有定义:int a=1,b=2,c=3; 则语句++a||++b&&++c;运行后b的值为()。
答案:C
A、1
B、0
C、2
D、3
50407、若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是()。
答案:B
A、7
B、8
C、9
D、10
50602、下面叙述中,()不是结构化程序设计三种基本结构的共同特点。
答案:A
A、先判断后执行
B、单入口,单出口
C、程序中没有执行不到的语句
D、无死循环
50603、结构化程序设计不包括()。
答案:A
A、最优化
B、自顶而下,逐步细化
C、模块化设计
D、结构化编码
50702、已知char a='R'; 则正确的赋值表达式是()。
答案:A
A、a=(a++)%4
B、a+2=3
C、a+=256--
D、a='\078'
50703、已知int a='R'; 则正确的表达式是()。
答案:A
A、a%10
B、a=int(3e2)
C、2*a=a++
D、a=a+a=a+3
50801、以下的if语句中,x的值一定被重新赋值的是()。
答案:B
A、if(x==y) x+=y;
B、if(x>y && x!=y );
x+=y;
C、if(x!=y)
scanf("%d",&x);
else
scanf("%d",&y);
D、if(x<y)
{ x++;y++; }
50808、以下程序的运行结果是()。
void main()
{
int n='c';
switch(n++)
{
default: printf("error "); break;
case 'a':
case 'b': printf("good "); break;
case 'c': printf("pass ");
case 'd': printf("warn ");
}
}
答案:C
A、pass
B、warn
C、pass warn
D、error
51107、若有定义int a[2][3];则对数组元素的非法引用是()。
答案:D
A、a[0][1/2]
B、a[1][1]
C、a[4-4][0]
D、a[0][3]
51109、若有定义int a[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof(a)/sizeof(a[0]) 的值为()。
答案:D
A、3
B、4
C、5
D、9
51207、以下程序段运行后屏幕输出为()。
\\ 为一个\
char str[]="ab\\cd";
printf("%d",strlen(str));
答案:B
A、4
B、5
C、6
D、7
51209、若有定义:char str1[6]="abcdm",*ps,*str2="abcdef";()是正确的。
答案:B
A、strcpy(str1,str2);
B、表达式strcmp(str1,str2)的值大于0
C、str1=str2;
D、表达式strlen(str1)的值为6
51307、若有如下函数定义:
int fun()
{
static int k=0;
return ++k;
}
以下程序段运行后屏幕输出为()。
int i;
for(i=1;i<=5;i++) fun();
printf("%d",fun());
答案:D
A、0
B、1
C、5
D、6
51403、以下叙述中,正确的是()。
答案:A
A、宏展开不占用运行时间,只占用编译时间
B、预编译处理命令行必须以分号结束
C、一个源程序只能有一个预编译处理命令行
D、使用带参数的宏定义时,应该说明每个参数的数据类型
51407、下面程序的输出结果是()。
#include <stdio.h>
#define SQR(x) (x*x)
void main()
{
int a,b=3;
a=SQR(b+2);
printf("\n%d",a);
}
答案:A
A、11
B、25
C、不定值
D、产生错误
51502、对于基类型相同的两个指针变量之间,不能进行的运算是()。
答案:C
A、<
B、=
C、+
D、-
解释:指针表示两个地址。
相加没有意义。
相减表示两个地址之间的偏移量。
51509、下面语句正确的是()。
答案:B
A、int *p; *p=20;
B、char *s="abcdef"; printf("%s\n",s);
C、char str[]="abcd"; str++;
D、char str[]={'a','b','c'};printf("%s",str);
51602、若函数fun的函数头为:
int fun(int i, int j)
且函数指针变量p定义如下:
int(*p)(int i, int j);
则要使指针p指向函数fun的赋值语句是()。
答案:B
A、p=*fun;
B、p=fun;
C、p=fun(i,j);
D、p=&fun;
51607、下面程序的输出结果是()。
#include<stdio.h>
void main()
{
int i;
char *s="abc";
for(i=0;i<3;i++)
printf("%s\n",s+i);
}
答案:A
A、abc
bc
c
B、c
bc
abc
C、abc
c
bc
D、a
ab
abc。