c语言习题.doc

合集下载

c语言练习题t答案.docx

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语言习题

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语言练习题-选择题(带答案)

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语言练习题(带详解答案)

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语言函数练习题及答案,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语言章节习题集(全).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语言第一章习题

第一章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语言习题

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已正确定义并分别指向两个字符串。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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。

相关文档
最新文档