c语言习题.doc
c语言练习题t答案.docx
C语言练习题一、选择题1、C语言属于()语言。
A、低级B、汇编C、高级D、面向对象2、一个C语言程序总是从()开始执行。
A、书写顺序的第一个函数main()B、书写顺序的第一条执行语句C、主函数D、不确定3、把已经编辑好的源程序翻译成二进制目标代码的是()步骤。
A、编辑B、编译C、连接D、执行4、在C语言程序中,main()的位置()。
A、必须作为第一个函数B、必须作为最后一个函数C、可以任意位置D、必须放在它所调用的函数之后5、C语言中的标识符只能由字母、数字和下划线组成,且第一个字符()。
A、必须为字母B、必须为下划线C、必须为字母或下划线索D、可以是字母、数字或下划线中的任一种6、C语言程序由__________ 组成。
A.过程B.函数C.子程序D.标识符7、在C语言中, _______ 既不是保留字,也不是合法的标识符。
A.a+bB. auto C・ char D・ a28、以下选项中正确的整型常量是()。
A.12.B. -20C. 078D. 4E29、表达式________ 的值是整数类型。
A. 15/2+2.0B. 15/2C. 25/5.0D. 0.5*1010、在C语言中,不正确的int类型的常数是 __________A. 32768B. 0C. 037D. OXaf11、以下选项中,不能作为合法常量的是______ 0A. 1.2e04B. 1.2e0.4C. 1.2e+4D. 1.2e012、设无符号int型数据在内存中占2个字节的存储空间,则其表示范围是A. 0〜255B. 0〜65535C. -256〜255D. -32768〜3276713、C源程序要正确地运行,必须要有什么函数A. printf函数B.自定义的函数C. main函数D. scanf函数14、设int类型的数据长度为2字节,则int类型数据的取值范围是_____ 。
A. 0〜255B. 0〜65535C. -256〜255D. -32768〜3276715、以下说法中正确的是________ oA.C语言程序总是从源文件中的第一个函数开始执行B.在C语言程序中,要调用的函数必须在main()函数中定义C.C语言程序总是从main()函数开始执行D.C语言程序中的main()函数必须放在程序的开始部分16、为求出s=10!的值,则变量s的类型应当为_______ oA. intB. longC. unsignedD.以上三种类型均可17、____ 是C语言的标准函数名。
C语言习题
C语言习题(一)一、判断题()1、开发C语言程序通常要经过编辑、预处理、编译、连接、装入和执行6个阶段。
()2、C语言程序由一个或多个函数组成,其中有且只有一个main函数。
()3、C语言中,所有标识符必须由一个字母 ( a ~ z , A ~ Z ) 或下划线 ( _ )开头。
()4、同一程序的各函数中定义的局部变量不可以同名。
()5、C语言中,主函数main中定义的变量称为全局变量,在整个文件中有效。
()6、C语言中,函数重载常用于设计多个进行类似任务而处理不同数据类型的同名函数。
()7、C语言中,数组名的值就是数组中第一个元素的值。
()8、在C++中,指针的作用是用来表示一个变量指向另一个变量这样的指向关系。
()9、C语言中,定义结构时,结构体中的成员名不能与程序中的其它变量重名。
()10、C语言中,声明一个结构并不分配内存,只有在定义结构变量时,才分配内存。
二、填空题1、在C语言中,定义double类型数组arr, 数组大小为20, 应写为()。
2、写出公式S=a2+b2+2ab的C语言赋值语句:()。
3、定义a为长度为10的字符串、并为字符串赋初值"continue"的语句为()。
4、设ch是字符变量,则判断ch是小写英文字母的逻辑表达式为()。
5、函数的返回值也叫函数值,函数值是通过函数中的()语句获得的。
6、链表是一种非常有用的动态数据结构,只有一个指针链的链表称为()。
7、对数组a[]进行初始化的数据为{2,4,6,8,10,12,14},则a[3]被初始化为()。
8、对于 int *p, i = 5, j = 6; 执行 p = &i; p = &j; 后(*p)的值为()。
9、执行完下列语句段后, i的值为:()。
int a[3][4]={{1,2,3},{4,5,6}}, i;i= a[1][2];10、有语句struct point{int x;int y;}; point pExample; 则将pExample的成员x初始化为8的语句是()。
C语言练习题-选择题(带答案)
C语言练习题-选择题(带答案)1.下列字符序列中,可用作C标识符的一组字符序列是(D)。
A:S.b,um,average,_aboveB:cla,day,lotu_1,2dayC:#md,&12某,month,tudent_n!D:D56,r_1_2,name,_t_12.C语言程序从main()函数开始执行,所以这个函数要写在(C).A:程序文件的开始B:程序文件的最后C:程序文件的任何位置(除别的函数体内)D:它所调用的函数的前面3.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为(B).A:连接、编译B:编译、连接C:连接、运行D:运行4.要调用文件处理函数时,在#include命令行中应包含(C).A:\5.以下数据中,不正确的数值或字符常量是(C)。
A:0B:5LC:o13D:98616.在C语言中,错误的语句是(C).A:a=b=c;B:;C:breakD:b=3某5,a某=4;7.以下标识符中,不能作为合法的C用户定义标识符的是(B)。
A:a3_b3B:voidC:_123D:IF8.一个C语言程序是由(C)组成.A:一个主程序和若干子程序B:函数C:若干过程D:若干子程序9.C语言源程序的基本单位是(B)。
A:过程B:函数C:子程序D:标识符10.已知宏定义#defineN3#defineY(n)((N+1)某n)执行语句z=2某(N+Y(5+1));变量z的值为(B).A:42B:48C:54D:出错第11题C语言文件系统中,整数1008若以ASCII形式存储,则占几个字节(B).A:2B:4C:1D:5第12题正确的自定义标识符是(C).A:ifB:a某bC:IfD:8pq第13题有说明语句chara='\\101';,则变量a(D).A:包含4个字符B:包含2个字符C:包含3个字符D:包含1个字符第14题下面正确的字符常量是(C).A:\第15题在main函数体内部和外部均允许出现的实体是(A).A:预处理命令B:语句C:另一函数的定义D:函数形式参数声明第16题若变量已正确说明为float类型,要通过语句canf(\给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是(B).A:102233B:10.0,22.0,33.0C:10.022.033.0第17题(B)是C语言提供的合法数据类型关键字.A:FloatB:ignedC:integerD:Char第18题下列选项中,合法的C语言关键字是(D).A:VARB:cherC:integerD:default第19题使用语句canf(\输入变量某,y的值([]代表空格),正确的输入是(C).A:1.25,2.4B:1.25[]2.4C:某=1.25,y=2.4D:某=1.25[]y=2.4第20题宏定义\\的宏替换\应为(A).A:a=某+5某y-3.1;B:a=(某+5)某(y-3.1);C:a=某+5某y-3.1D:a=(某+5)某(y-3.1)答案:A第21题(1.0分)题号:919下述程序段的输出结果是(A).int某=10;inty=某++;printf(\A:11,10B:11,11C:10,10D:10,11答案:A第22题(1.0分)题号:925以下不正确的C语言标识符是(A).A:2yB:a_1_2C:able某eD:_某答案:A第23题(1.0分)题号:914以下所列的C语言常量中,错误的是(B).A:0某ffB:1.2e0.5C:2LD:'\\72'答案:B第24题(1.0分)题号:918下列程序的输出是(B).#includemain(){printf(\A:0B:变量无定义C:-1D:1答案:B第25题(1.0分)题号:930在C程序中,1如果用来表示逻辑值时,应代表(A).A:真B:假C:整数1D:长整型数1答案:A第26题(1.0分)题号:927以下答案中不是C语言最基本数据类型的是(A).A:逻辑型B:整型C:字符型D:实型答案:A第27题(1.0分)题号:922常数的书写格式决定了常数的类型和值,0某1011是(C).A:8进制整型常量B:字符常量C:16进制整型常数D:2进制整型常数答案:C第28题(1.0分)题号:928若某,y均定义为int型,z为double型,以下不合法的canf函数调用语句是(D).A:canf(\\B:canf(\\C:canf(\\D:canf(\\答案:D第29题(1.0分)题号:931以下所列字符常量中,不合法的是(A).A:'\\0某a2'B:'\\65'C:'$'D:'\\某2a'答案:A第30题(1.0分)题号:912若变量都已正确说明,则以下程序段(C).a=2;b=3;printf(a>b\A:没有正确的输出格式控制B:输出为:某某某a=2C:输出为:###b=2D:输出为:某某某a=2###b=3答案:C第31题(1.0分)题号:929以下四个字符序列中,能用作用户自定义的标识符是(A).A:PutcharB:-doubleC:A123-D:int答案:A第32题(1.0分)题号:923下列格式符中,可以用于以8进制形式输出整数的是(C).A:%dB:C:%oD:答案:C第33题(1.0分)题号:936以下叙述中正确的是(D).A:输入项可以是一个实型常量,如:canf(\B:只有格式控制,没有输入项,也能正确输入数据到内存,例如:canf(\ C:当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:canf(\D:当输入数据时,必须指明变量地址,例如:canf(\答案:D第34题(1.0分)题号:926C语言中字符型(char)数据在内存中的存储形式是(D).A:原码B:补码C:反码D:ASCII码答案:D。
C语言练习题(带详解答案)
C语言练习题(带详解答案)一单项选择题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.intt5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的-,选项B中[与]不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。
A)3a某B)某C)caeD)-e2E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的-不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。
A)%某B)a+bC)a123D)123选项A中的%,选项B中+不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。
A、print_3ddb8aBcB、I\\amone_halftart$it3paiC、tr_1CpppowwhileD、P某qMy->bookline#Hi.age选项B中的\\,$,选项D中>,#,.,-不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。
C语言函数练习题及答案,DOC
【单选题】在下列关于C函数定义的叙述中,正确的是?∙A、∙∙∙∙A、1∙B、2∙C、4∙D、5我的答案:B得分:2.5分3【单选题】∙∙∙∙以下关于函数叙述中,错误的是?∙A、函数未被调用时,系统将不为形参分配内存单元;∙B、实参与形参的个数必须相等,且实参与形参的类型必须对应一致;∙C、当形参是变量时,实参可以是常量、变量或表达式;∙D、∙∙∙∙函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是?∙A、实参将地址传递给形参,并释放原先占用的存储单元;∙B、实参将地址传递给形参,调用结束时形参再将此地址回传给实参;∙C、实参将值传递给形参,调用结束时形参再将其值回传给实参;∙D、∙∙∙∙∙A、既允许直接递归调用也允许间接递归调用;∙B、不允许直接递归调用也不允许间接递归调用;∙C、允许直接递归调用不允许间接递归调用;∙D、不允许直接递归调用允许间接递归调用;∙∙∙∙若函数的形参为一维数组,则下列说法中正确的是()。
∙A、使用函数时的对应实参必为数组名。
∙B、形参数组可以不指定大小。
形参数组的元素个数必须等于实参数组的元素个数。
∙D、∙∙∙∙有以下函数定义:void fun(int n,double x) {……}下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是()。
fun(int y,double m); ∙B、k=fun(10,12.5);∙C、∙∙∙f(int array[3][])∙C、f(int array[][4])∙D、f(int array[2][5])我的答案:C得分:2.5分14【单选题】若程序中定义函数float fadd(float a, float b)∙∙∙∙下面程序段运行后的输出结果是?(假设程序运行时输入5,3回车)int a, b;void swap( ){int t;t=a;a=b;∙∙∙5,3∙D、3,5我的答案:A得分:2.5分16【单选题】以下程序运行后的输出结果是?int fun (int x, int y){∙∙6∙C、8∙D、1217【单选题】下列程序的输出结果是()。
C语言章节习题集(全).docx
C语言程序设计第一、二章单项选择题1.将汇编语言编写的程序翻译成目标程序的程序是()A)解释 B)编译 C)汇编 D)目标2.不属于面向机器语言的是()A)符号语言 B)二进制语言 C)汇编语言 D)C 语言3.将高级语言编写的程序翻译成目标程序的程序是()。
A)解释 B)编译 C)汇编 D)二进制4.不属于高级语言的是()。
A)BASICB)CC)ALGOLD)符号语言5.程序段的基本结构中,不包含()。
A)函数结构 B)循环结构 C)顺序结构 D)分支结构6、C语言源程序的最小单位是()。
A、程序行B、语句C、函数D、字符7、以下说法正确的是()。
A、在C语言中,要调用的函数必须在main() 函数中定义B、C语言程序总是从第一个定义的函数开始执行C、C语言程序中, main() 函数必须放在程序的开始部分D、C语言程序总是从main() 函数开始执行8、以下对 C语言描述中正确的是()。
A、C语言源程序中可以有重名的函数B、C语言源程序中要求每行只能书写一条语句C、C语言源程序中,注释可以出现在任何位置D、最小的C源程序中没有任何内容9、对 C语言源程序执行过程描述正确的是()。
A、从main()函数开始执行,到main() 函数结束B、从程序的第一个函数开始执行,到最后一个函数结束C、从 main 函数开始执行,到源程序的最后一个函数结束D、从第一个函数开始执行,到 main 函数结束。
填空题1.能完成某个任务的、有始有终的 C语言 ___称为 C 程序。
2.用来编写程序的计算机语言称为 ____。
3.高级语言编写的程序称为 ____。
4.用C语言编写的源程序简称为“C程序”,扩展名规定为“____”。
5.C 程序经过“编译”后将获得扩展名为“OBJ”的 ____。
6.C 程序经过编译后获得的中间代码文件还需要经过____,才能成为可执行的“程序”,目标程序的扩展名规定为"EXE"。
C语言第一章习题
第一章C语言概述一、选择题1.一个C程序的执行是从( A )。
A.main()函数开始,直到main()函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main()函数开始,直到最后一个函数结束2.在C程序中,main函数的位置( B )。
A.必须作为第一个函数B.必须作为最后一个函数C.可以任意D.必须在它所调用的函数之后3.一个C程序是( B )构成的。
A.一个主程序和若干个子程序组成B.一个或多个函数C.若干过程组成D.若干子程序组成4. ( A )是C程序的基本构成单位A.函数 B.函数和过程 C.超文本过程D.子程序5.以下叙述不正确的是( D )。
A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面6.“连接程序(linker)”将一个程序的所有目标程序和系统的库文件以及系统提供的其它信息连接起来,最终生成一个可执行的二进制文件,它的后缀是( D )。
A.cpp B.obj C.lib D.exe7.用C语言编写的代码程序( C )。
A.可立即执行B.是一个源程序C.经过编译即可执行D.经过编译解释才能执行8.以下叙述正确的是( C )。
A.在C程序中,main函数必须位于程序的最前面。
B.C程序每行中只能写一条语句。
C.C语言本是没有输入输出语句。
D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误。
9.C语言程序的注释是( A )。
A.以/*开始,以*/结束B.以/*开始,以/*结束C.以//开头,以//结束D.以/*开始,以//结束10.任何C语句必须以( B )结束A.句号 B.分号 C.冒号 D感叹号二、填空题1.以/*开始,以*/结束,在/*和*/之间的部分即为(注释)。
2.一个C程序有且仅有一个(main )函数,它是程序的入口和出口。
c语言习题
c语言习题(带答案)(共5页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--一、选择1若有表达式(a)(--x):(++y),则其中与a等价的表达式是A) a= =1 B) a= =0 C)a!=1 D) a!=02有以下程序段int x,y,z;x=10; y=50; z=30;if(x>y)x=y,y=z;z=x;printf(“x=%d y=%d z=%d \n”,x,y,z);程序的输出结果是A) x=10 y=50 z=10 B) x=10 y=50 z=30C) x=10 y=30 z=10 D) x=50 y=30 z=503下面的函数调用语句中func函数的实参个数是f(f2(u1,u2),(u3,u4),(u6,max(u7,u8)));A)3 B) 4 C)5 D)84 以下叙述中错误的是A) 用户定义的函数中可以没有return语句B)用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 C)用户定义的函数中若没有return语句,则应当定义函数为void类型D)函数的return语句中可以没有表达6有以下程序#include <>void fun( int a, int b){ int t;t=a; a=b; b=t;}main(){ int c[10]={11,12,13,14,15,16,17,18,19,20}, i;for(i=0;i<10;i+=2) fun(c[i], c[i+1]);for(i=0;i<10;i++) printf("%d," ,c[i]);printf("\n");}程序的运行结果是A)11,12,13,14,15,16,17,18,19,20B)12,11,14,13,16,15,18,17,20,19C)20,19,18,17,16,15,14,13,12,11D)20,11,12,13,14,15,16,17,18,198有以下程序main(){ int a=7,b=8,*p,*q,*r;p=&a;q=&b;r=p; p=q;q=r;printf("%d,%d,%d,%d\n",*p,"q,a,b);}程序运行后的输出结果是A)8,7,8,7 B)7,8,7,8 C)8,7,7,8 D)7,8,8,79 .s1和s2已正确定义并分别指向两个字符串。
C语言各章节练习题(含答案)
C语言各章节练习题(含答案)一、c语言概述练习题选择1.一个c程序的执行是从。
a)本程序的main函数开始,到main函数结束b)本程序文件的第一个函数已经开始,至本程序文件的最后一个函数完结c)本程序文件的第一个函数已经开始,至本程序main函数完结d)本程序的main函数已经开始,至本程序文件的最后一个函数完结2.以下描述不恰当的就是。
a)一个c源程序必须包含一个main函数b)一个c源程序可由一个或多个函数组成c)c程序的基本组成单位是函数d)在c程序中,注释说明只能位于一条语句的后面3.以下描述恰当的就是。
a)在对一个c程序进行编译的过程中,可发现注释中的拼写错误b)在c程序中,main 函数必须位于程序的最前面c)c语言本身没输入输出语句d)c程序的每行中就可以写下一条语句4.一个c语言程序就是由。
a)一个主程序和若干个子程序组成b)函数组成c)若干过程组成d)若干子程序组成二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为。
x=(i=4,j=16,k=32)a)4b)16c)32d)522.下列四组选项中,均不是c语言关键字的选项是。
a)defineiftypeb)getccharprintfc)includecasescanfd)whilegopow3.以下四组选项中,均就是不合法的用户标识符的选项就是。
(c语言标识符由字母,数字,下划线共同组成,结尾无法就是数字)a)wp_0dob)b-agotointc)floatla0_ad)-123abctemp8.未知字母a的ascii码点为十进制数65,且c2为字符型,则继续执行语句c2=‘a’+‘6’-‘3’后,c2中的值。
a)db)68c)不确定的值d)c填空题1.若存有以下定义,则排序表达式y+=y-=m*=y后的y值就是【1】。
-16intm=5,y=2;7.若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为【8】,n的值为【9】。
C语言练习题及参考答案
练习题1及参考答案1. 单项选择题(1)以下并非C语言的特点的是????? 。
A.? C语言简洁和紧凑B. 能够编制出功能复杂的程序C.? C语言可以直接对硬件进行操作D.? C语言移植性好【答】B(2)一个C程序的执行是从????? 。
A.? main()函数开始,直到main()函数结束B. 第一个函数开始,直到最后一个函数结束C. 第一个语句开始,直到最后一个语句结束D.? main()函数开始,直到最后一个函数结束【答】A(3)在C程序中,main()的位置????? 。
A. 必须作为第一个函数B. 必须作为最后一个函数C. 可以任意D. 必须放在它所调用的函数之后【答】C(4)一个C程序是由????? 。
A. 一个主程序和若干子程序组成B. 一个或多个函数组成C. 若干过程组成D. 若干子程序组成【答】B(5)下列说法正确的是????? 。
A. 在执行C程序时不是从main()函数开始的B.? C程序书写格式限制严格,一行内必须写一个语句C.? C程序书写格式比较自由,一个语句可以分行写在多行上D.? C程序书写格式严格要求一行内必须写一个语句,并要求行号【答】C2. 填空题(1)一个C源程序至少有?? ①?? 个main()函数和?? ②?? 个其他函数。
【答】①一? ②若干(2)任何C语句必须以????? 结束。
【答】分号(3)C语言源程序的基本单位是????? 。
【答】函数(4)C编译程序的功能是????? 。
【答】将C源程序编译成目标代码练习题2及参考答案1. 单项选择题(1)以下字符串为标识符的是????? 。
A. _MY????????? ??????B. 2_2222?????? ?????? ??????C. short?????? ?????? ??????D. LINE 5【答】A(2)下列符号可以作为变量名的是????? 。
A. +a????? ?????? ??????B. *p?????? ?????? ?????? ??????C. _DAY????? ?????? ??????D. next day【答】C(3)设c是字符变量,则以下表达式正确的是????? 。
c语言程序基础练习题500道(附答案)
c语言程序基础练习题500道(附答案)1.下列四组选项中,均不是C语言关健字的选项是( A )。
A) define B) gect C) include D) whileIF char scanf gotype printf case pow2.下面四个选项中,均是合法整型常量的选项是( A )。
A)160 B)-0xcdf C) -01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x3.下面四个选项中,均是不合法的转义符的选项是( B )。
A) '\"' B) '\1011' C) '\011' D) '\abc''\\' '\' '\f' '\101''xf' '\A' '\}' 'x1f'4.下面不正确的字符串常量是( A )。
A)'abc' B)"12'12" C)"0" D)" "5.以下选项中不合法的用户标识符是( A )。
A)abc.c B)file C)Main D)PRINT6.C语言提供的合法关键字是( D )。
A) swithB) cherC) CaseD)default7.下列标识符组中,合法的用户标识符为 AA)_0123与ssipedB)del-word与signedC)list与*jerD) keep%与wind8.在C语言中,逻辑值"真"的表示是用( C )。
A) true B) 整型值0 C)非另整型值D) T9若有以下定义char s='\092';则该语句( b )A)使s的值包含一个字符B)定义不合法,s的值不确定C)使s的值包含4个字符D)使s的值包含3个字符10设C语言中,int类型数据占2个字节,则float类型数据占(D )个字节。
C语言 习题
第一章 C语言概述1.1选择题【题1.1】以下不是C语言的特点的是()A.C语言简洁、紧凑B.能够编制出功能复杂的程序C. C语言可以直接对硬件进行操作D.C语言移植性好【题1.2】以下不正确的C语言标识符是( )。
A.ABC B.abc C.a_bc D.ab.c【题1.3】以下正确的c语言标识符是()。
A.%x B.a十b C.a123 D.test!【题1.4】一个c程序的执行是从( ).A.main( )函数开始,直到main( )函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main( )函数开始,直到最后一个函数结束【题1.5】一个C语言程序是由()。
A)一个主程序和若干子程序组成B)函数组成C)若干过程组成D)若干子程序组成【题1.6】一个c程序是由()。
A.一个主程序和若干子程序组成B.一个或多个函数组成C. 若干过程组成D.若干子程序组成【题1.7】C语言派程序的基本单位是( )。
A.过程 B.函数 c子程序 D.标识符【题1.8】编辑程序的功能是()。
A.建立并修改程序 B.将c源程序编译成目标程序C.调试程序 D.命令计算机执行指定的操作1.2填空题【题1.9】c语言符号集包括【】。
【题1.10】一个c程序有且仅有一个【】函数。
【题1.11】C程序的基本单位是【】。
【题1.12】一个c派程序有【】个main( )函数和【】二个其他函数。
【题1.13】在一个C源程序中,注释部分两侧的分界符分别是【】和【】。
【题1.14】结构化设计中的三种基本结构是【】。
【题1.15】在C语言中,输入操作是由库函数【】完成的,输出函数是由库函数【】完成的。
1.3编程题【题1.16】编写一个程序,在屏幕上输出你的姓名。
试着上机编辑、编译、运行你的程序。
第二章数据类型、运算符与表达式2.1选择题【题2.1】以下结果为整数的表达式(设有int i;char c;float f;)().A.i十f B.i*c C.c十f D.i十c十f【题2.2】以下使i的运算结果为4的表达式是()。
C语言练习题
第一章C程序概述一.选择题1.在计算机上可以直接运行的程序是(C )A.C语言源程序B.汇编语言程序C.机器语言程序D.高级语言程序2.一个程序总是从( B )开始执行程序A.第一行B.主函数C.第一个函数D.最后一个函数3.下述标识符中,(B )是合法的用户标识符。
A.A#CB.getchC.voidD.ab*4.以下叙述正确的是( C )A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误5.C语言规定,在一个源程序中,main函数的位置(C )A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后6. 一个C语言程序是由( B )A.一个主程序和若干个子程序组成B.函数组成C.若干个过程组成D.若干子过程组成7. 以下叙述不正确的是( D )A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面8.一个C程序的执行是从( A )A.本程序的main函数开始,到main函数的结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数的结束C.本程序文件的main开始,到本程序文件的最后一个函数的结束D.本程序文件的第一个函数开始,到本程序文件的main函数的结束9. 以下叙述中正确的是( B )A.C语言的源程序不必通过编译就可以直接运行B.C语言中的每条可执行语句最终都将被转换成二进制的机器指令C.C源程序经编译形成的二进制代码可以直接运行D.C语言中的函数不可以单独进行编译10.以下叙述错误的是( D )A.C程序中,语句用分号“;”结尾,分号是C语句的一部分B.C程序中,可以在“{}”内写若干条语句,构成复合语句C.D语言的变量在使用之前必须先定义其数据类型D.C语言函数内部可以定义函数11. 以下叙述错误的是( D )A.C程序的注释部分放在“/*”和“*/”之间,“/”和“*”之间不允许有空格B.一个C源程序可由一个或多个函数组成C.一个C源程序必须有一个且只能有一个main函数D.C程序编译时注释部分的错误将被发现二.填空题1. C源程序的基本单位是________(函数)2. 一个C源程序中至少应包括一个______(main 函数)3. 在一个C源程序中,注释部分两侧的分界符分别是______和______(/* */)。
C语言习题
第一章选择题1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数B) 一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成B) 函数组成C) 若干过程组成D) 若干子程序组成第三章选择题1.若x、i、j、k都是int型变量,则计算下面表达式后,x 的值为。
x=(i=4,j=16,k=32)A) 4 B) 16 C) 32 D) 522.下列四组选项中,均不是C语言关键字的选项是。
A) define IF typeB) getc char p rintfC) include case scanfD) while go pow3.下列四组选项中,均是不合法的用户标识符的选项是。
A) W P_0 doB) b-a goto intC) float la0 _AD) -123 abc TEMP4.下列四组选项中,均是合法转义字符的选项是。
A) ‘\”’‘\\’‘\n’B) ‘\’‘\017’‘\”’C) ‘\018’‘\f’‘xab’D) ‘\\0’‘\101’‘xlf’5.下面正确的字符常量是。
A) “c”B) ‘\\’’C) ‘’D) ‘K’6.以下叙述不正确的是。
A) 在C程序中,逗号运算符的优先级最低B) 在C程序中,MAX和max是两个不同的变量C) 若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,二b中的值不变D) 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值7.以下叙述正确的是。
C语言基础练习题(含答案)新教材.doc
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。
C语言复习题选择判断.doc
A) AC) b-a1、 c 语言程序的基本单位是—c —o A 、程序行 B 、语句 C 、函数 D 、字符2、 C 的源程序要变成II 标程序要经过的步骤—c ______ A 、编辑 B 、连接 C 、编译 D 、汇编3、 假设所有变量均为整型,则表达式(*2,b=5,b++,a+b )的值是_A _A 、7B 、8 C> 6 D 、24、 下面四个选项中,均是不合法的用户标识符的选项是 __ C_o*、 AB.switch C 、 b-aD 、-123 P_0 laO goto temp DoAintINT5、以下叙述不正确的是—D —oA 、 一个C 源程序可由一个或多个函数组成B 、 一个C 源程序必须包含一个MAIN 函数 C 、 C 程序的基本组成单位是函数D 、 在C 程序屮,注释说明只能位于一条语句的后面6、若x , i, j 和k 都是int 型变量,则执行表达式x= (i 二4, j 二16, k=32)后x 的值为 D ____A 、 4B 、 16C 、 32D 、 527、C 语言屮的标识符只能由字母,数字和卜•划线三种字符纽•成,且第一个字符—c —。
A 、必须为字母B 、必须为下划线C 、必须为字母和下划线D 、可以为三种中任一种字符8、已知各变量的类型说明如下int k, a, b;unsigned long w=5; double x=io 42;则以下不符合C 语言的表达式是_A _____ oA 、 x%(-3) B> w+=2 C 、 k=(a=2,b=3,a+b) D> a+=(b=4)*(a=3)9、 C 语言程序的全部功能由(c )来完成。
A 、程序B 、主程序C 、函数D 、过程10、 C 的源程序要变成目标程序要经过步骤(c )0A 、编辑B 、连接C 、编译D 、汇编11、 在卜-面表达式屮选出值为0的表达式(d )oA 、 10=9+1B 、7/5C 、8 0D 、!(3*5)12、下面四个选项中,均是不合法的用户标识符的选项是—C ______B) float ka() -AP_()gotoD)-123 temp INTA)5bc' B)“12'12" C)“(T D) “ "14、C语言中(以16位PC机为例),5种基木数据类型的存储空间长度的排列顺序为—A)char<int<long int< = float<doubleB)char=int< long int < = float < doubleC)char<int<long int = float=doubleD)char=int=long int< = float<double15、假定有以下变量定义:int k=7, x=12;则能使值为3的表达式是—d _______A、x%= (k%=5) E、x%= (k-k%5) C、x%=k-k%5 D、(x%=k)・(k%=5)16、设x和y均为int型变量,则以卞语句:x+=y; y=x-y; x-=y;的功能是_d ____A、把x和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D)交换x和y屮的值17、在下面衣达式屮选出值为1的表达式—b ______ oA、a!=aB、7/5C、b>bD、!(3*5)18、卜•面程序段执行后b的值是—a—oint b=5;switch(b){case 4: b++;case 5: b++;case 6: b++;break;case 7: b++;)A、7B、6C、8D、519^设char ch, str[10];则下面正确的语句是_c _______ 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.C语言中,int型数据在计算机内部是由()表示的。
答:int型数据在计算机内部是由16位补码表示的。
2.下列可以作为C语言用户标识符的是()。
A) _123 B) a1b2c3 C) int D) 123abc答:A)和B)C语言标识符必须是以英文字母(a到z)、或者下划线_开头的字符串。
字符串中只能包含英文字母、下划线和数字(0到9)。
但字符串不能是C语言中的32个保留字(例如int,short,long,unsigned,float,char,if,switch,for,while等)。
3.在C语言中,如果下面的变量都是int类型,则输出的结果是()。
sum=pad=5,pAd=sum++,pAd++,++pAd;printf("%d\n",pad);答:输出结果是5。
因为C语言是字母大小写敏感的,也就是说区分大小写字母。
pad和pAd是两个不同的变量。
4.以下程序的输出结果是( )。
#include<stdio.h>main(){printf("%d\n",NULL);}答:0因为stdio.h头文件中NULL的定义如下:#define NULL 05.下面程序的输出是()。
main(){ int x=10,y=3;printf("%d\n",y=x/y);}答:3因为两个同类型的数据作算术运算,其结果仍为该类型。
即整数除以整数,商仍为整数。
10/3的商为3。
6.下面程序的输出是()。
main(){ int x=023;printf("%d\n",--x);}答:18因为023是一个八进制数,表达式--x的值为022,按照%d带符号的十进制数输出,结果为18。
注意:023是八进制数;23是十进制数;0x23是十六进制数。
7.在C语言中,不正确的int类型的常数是()。
A)32768 B)0 C)037 D)0xAF答:A)8.执行下面程序中的输出语句后a的值是()。
main(){ int a;printf("%d\n",(a=3*5,a*4,a+5));}答:15因为在计算逗号表达式a=3*5,a*4,a+5时,依次计算下面3个表达式:a=3*5(结果变量a的值为15,该赋值表达式的值也为15)a*4(该算术表达式的值为60)a+5(该算术表达式的值为20,输出函数printf输出20)逗号表达式的值为20,但变量a的值认为15。
9.以下程序的输出结果是()。
#include<stdio.h>main(){int a=2,c=5;printf("a=%%d,b=%%d\n",a,c);}A)a=%2,b=%5 B)a=2,b=5 C)a=%%d,b=%%d D)a=%d,b=%d答:D)因为%%是格式说明符,输出%,其它原样输出。
如果输出函数语句改成printf("a=%%%d,b=%%%d\n",a,c);,那么输出结果为A)。
10.以下程序的输出结果是()。
#include<stdio.h>main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}A)6,1 B)2,1 C)6,0 D)2,0答:B)241/100的值为2,2%9的值为2。
(-1)&&(-1)的值为1。
在逻辑运算中,非0的值为真,真“与”真结果为真,关系和逻辑运算的结果如果为真用“1”表示,如果为假用“0”表示。
11.请选出以下语句的输出结果()。
printf("%d\n",strlen("\t\"\065\xff\n"));答:5函数strlen的功能是计算字符串长度。
那么字符串"\t\"\065\xff\n"包含多少个字符呢?\t是横向跳格字符;\”是字符”;\065是ASCII码值为八进制数065的字符;\xff是ASCII码值为十六进制数0xff的字符;\n是换行字符。
该字符串共有5个字符。
注意:记住常用的转义字符。
12.下面程序的输出结果是()。
int i = 65536;printf("%d\n", i);答:-1因为int型变量i在C语言中是用16位补码表示的,而65535变成二进制数为1111111111111111,因此i的值为1111111111111111,按照带符号的十进制数%d输出-1,因为1111111111111111是-1的补码。
13.若有说明和语句:int a=5;a++;此处表达式a++的值是()。
答:5表达式a++的值是5表达式计算后,变量a的值是6。
14.若k为int变量,则以下语句()。
k=8567;printf("|%-06d|\n",k);答:|8567 |两个|原样输出,格式符%-06d说明输出变量k的值长度为6且左对齐。
15.若x 为float型变量,则以下语句()。
x=213.82631;printf("%-4.2f\n",x);答:213.8316.若x为double变量,则以下语句()。
x=213.82631;printf("%-6.2e\n",x);答:2.14e+0217.若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),则执行下列语句ch='a';k=12;printf("%x,%o,",ch,ch,k);printf("k=%%d\n",k);输出为()。
答:61,141,k=%d18.若有以下定义:char s=’\092’;则该语句()。
A).使s的值包含1个字符B).定义不合法,s的值不确定C).使s的值包含4个字符D).使s的值包含3个字符答:B)因为字符’\092’中的092应该是八进制数,但八进制数中不可能出现9。
19.执行以下语句后,输出结果是()。
int a =1;printf("%d,%d",a,a++);答:2,1因为C语言中函数的实参计算顺序是从右至左。
即首先计算a++,然后计算a。
20.以下程序的输出结果是()。
#include<stdio.h>main (){int i=010,j=10;printf("%d,%d\n",++i,j--);}A)11,10 B)9,10 C)010,9 D)10,9答:B)010是八进制数。
21.已知字母A的ASCII码为65,以下程序的输出结果是()。
#include <stdio.h>main( ){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);}答:65,8922.以下语句int a=110,b=017;printf("%x,%d\n",a++,++b);输出结果是()答:6e,16110的十六进制数为6e,八进制数017加1为020,等于十进制数16。
23.以下程序main(){int i=3,j=2,a,b,c;a=(--i==j++)?--i:++j;b=i++;c=j;printf("%d,%d,%d\n",a,b,c);}输出结果是()答:1,1,324.请读程序#include <stdio.h>main(){int a; float b, c;scanf("%2d%3f%4f", &a, &b, &c);printf("\na=%d,b=%f,c=%f",a,b,c);}若运行时从键盘上输入9876543210<CR>(<CR>表示回车),则上面程序的输出结果是()。
答:a=98,b=765.000000,c=4321.00000025.请读程序片段(字符串内没有空格字符):printf("%d\n",strlen("AST\n012\1\\"));上面程序的输出结果是()。
答:9字符串中包含9个字符,分别是A S T \n 0 1 2 \1 \\。
26.以下程序的输出结果是()main(){int i=-1;printf("%d,%u\n",i,i);}答:-1,655351.判断型char 变量c1 是否为小写字母的正确表达式为()。
A) 'a'<=c1<='z'B) (c1>=a)&&(c1<=z)C) ('a'>=c1)||('z'>=c1)D) (c1>='a')&&(c1<='z')答:D)2.程序的运行结果是()。
main(){int a=1,b=2,c=3,d=4,m=2,n=2;(m=a>b)&&(n=c>d);printf("%d",n);}答:2首先计算m=a>b,因为关系运算符>优先级高于赋值运算符=,a>b的结果为假(0),赋值后m 的值为0。
因为C语言计算逻辑表达式0&&(n=c>d)时,已经知道结果为0,因此n=c>d就不计算了。
N的值仍为2。
3.执行以下语句后a 的值为();b 的值为()。
int a,b,c;a=b=c=1;++a||++b&&++c;答:a的值为2;b的值为1。
4.程序的运行结果是()。
main(){int x=10,y=20,z=30;if(x>y)z=x;x=y;y=z;printf("%d,%d,%d",x,y,z);}答:20,30,30因为if(x>y)z=x;x=y;y=z;是三条语句,即:if(x>y)z=x;x=y;y=z;而不是:if(x>y){ z=x;x=y;y=z; }5.程序的运行结果是()。
main(){int m=5;if(m++>5)printf("%d\n",m);else printf("%d\n",m--);}答:6因为表达式m++>5的值为假,m的值为6,执行语句printf("%d\n",m--);时输出6,m的值又变为5。