C语言程序设计题库1

合集下载

程序设计基础C-题库-1

程序设计基础C-题库-1
10、C语言是UNIX和其衍生版本的主要开发语言。 答案: 正确
11、请简述printf()函数的作用。 答案:
printf()printf()“Hello, world\n”“\n”
12、请简述C语言中main()函数的作用。 答案: main函数是C程序的入口函数,即程序的执行是从main函数开始
程序设计基础C-题库
1、计算机语言按照高低级别可分为机器语言、 、 三大类。 答案: 汇编语言 ; 高级语言 ;
2、C语言中源文件的后缀名为 。 答案: *.c;.c ; 解析:
3、在程序中,如果使用printf()函数,应该包含 头文件。 答案: stdio.h ; 解析:
4、在main()函数中,用于返回函数执行结果的是 语句。 答案: return ;
15、下列关于主函数说法错误的是( )
A、 一个C程序中只能包含一个主函数 B、 主函数是C程序的入口 C、 C程序中可以包含多个主函数 D、 主函数只能包含输出语句 答案: CD
16、下列选项中,不属于C语言优点的是
A、 不依赖计算机硬件 B、 简洁、高效 C、 可移植 D、 面向对象 答案: D
5、C语言程序在Windows平台下经过编译、连接后生成的可执行文件后缀是 。 答案: .exe ;
6、C语言并不属于高级语言。 答案: 错误
7、计算机语言(Computer Language)是人与计算机之间通信的语言。 答案: 正确
8、C语言并不能实现汇编语言的大部分功能。 答案: 错误
9、Eclipse工具和Visual Studio工具都可以开发C语言。 答案: 正确
17、下列选项中,哪一个是多行注释?
A、 // B、 /**/ C、 \\ D、 以上均不属于 答案: B

C语言程序设计考试题库

C语言程序设计考试题库

C语言程序设计考试题库一、判断题1、所谓常量,就是在程序运行过程中其值可以改变的量。

()2、一个C程序可以由多个源程序文件构成,但其中只能有一个main()函数。

()3、在C语言中do-while 语句和for循环均是先执行循环体语句,再判断表达式。

()4、在函数调用中将变量的地址作为实参传递给对应形参时,实现的是单向的值传递。

()5、C语言中所有字符串都是以‘\0’结束的。

()6、do-while构成的循环语句中的循环体最少执行1次。

()7、数组名在C语言中表示的是数组的首地址。

()8、使用gets()函数输入字符串时可以在字符串中输入空格。

()9、算术运算符中‘/’的优先级高于‘%’。

()10、char a[5];该语句表明数组a中的第五个元素为a[5]。

()11、C语言源程序文件的扩展名均为.c。

()12、char a[5];数组a中有a[1]、a[2]、a[3]、a[4]、a[5]共5个元素。

()13、C语言程序区分大小写,字符常量必须定义为大写。

()14、若int i=10,j=2;则执行i*=j+8;后i的值为28。

()15、若int x=100,y=200;则语句printf("%d",(x,y));输出结果为100。

()16、c语言中的标识符只能由字母,数字和下划线三种字符组成。

()17、函数getchar()的作用是:输出一个字符。

()18、一个C语言程序总是从第一个函数开始执行。

()19、在c语言中,char型数据在内存中是以ASCII码形式存储的。

()20、在C语言中switch语句必须使用break语句。

()二、选择题1、以下说法正确的是()。

A、C语言程序总是从第一个函数开始执行。

B、C语言程序中要调用的函数必须在main()函数中定义。

C、C语言程序总是从main()函数开始执行。

D、C语言程序中的main()函数必须放在程序的开始部分。

2、以下几组选项中为合法的标识符是()。

c语言程需计试题库

c语言程需计试题库

c语言程需计试题库《C语言程序设计》试题库一选择题共250个每题2分1一个c语言程序的执行是从A本程序的main函数开始到main函数结束B本程序文件的第一个函数开始到本程序文件的最后一个函数结束 C本程序的main函数开始到本程序文件的最后一个函数结束D本程序文件的第一个函数开始到本程序main函数结束2一个c语言程序是由A一个主程序和若干子程序组成 B函数组成C若干过程组成 D若干子函数组成3以下选项中是正确的整型常量是A12. B -20 C 1000 D 4 5 64以下选项中正确的实型常量是A0 B 3 1415 C 0329102 D8715以下选项中不合法的实型常量是A 2607E-1 B0810312 C-7777 D456e-26以下选项中不合法的字符串是Aabc B1212 C 0 D7下面正确的字符常量是Ac B \\ C w D8以下选项中不合法的用户标识符是A abcc Bfile CMain DPRINTF9C语言中的标识符只能由字母数字和下划线三种字符组成且第一个字符A必须为字母 B 必须为下划线 C必须为字母或下划线D可以是字母数字和下划线中任意一种字符10以下选项中不合法的用户标识符是A_123 B printf C A D Dim11c语言中运算对象必须是整型的运算符是A B C D12可在C程序中用作用户标识符的一组标识符是Ant B as-b3 C Fir D 2cdefine -123 _bc DOWORD if name SIG13若变量已正确定义并赋值符合C语言语法的表达式是A a a7 Ba 7bca C int 1234 D a a7 cb14若abcd都是int类型变量且初值为0以下选项中不正确的赋值语句是Aa b c 100 Bd Ccb Dd c 22 - b15若xij和k都是int变量则计算下面表达式后x的值是x i 4j 16k 32A4 B16 C32 D 5216假设所有变量均为整型则表达式a 2b 5bab的值是A7 B8 C 6 D 217若有代数表达式a2b2则正确的c语言表达式是Aab Bpow a2 pow b2 Caabb D aa bb18若有代数表达式则不正确的c语言表达式是Aabce3 B3ae bc C3ae bc Daec b 319 若有定义int a 8b 5c执行语句c ab04后c的值为A14 B1 C20 D220char型数据在内存中的存储形式是A补码 B反码 C原码 DASCII码21设变量a是整型f是实型i是双精度则表达式10aif值的数据类型为 Aint Bfloat Cdouble D不确定22 若有定义int a 7flaot x 25y 47则表达式xa3 int xy 24的值是A2500000 B2750000 C3500000 D000000023 若变量a是int类型并执行了语句a A16则正确的叙述是Aa的值是字符C Ba的值是浮点型C不允许字符型和浮点型相加 Da的值是字符A的ASCII值加上124以下选项中合法的字符常量是AB B\ 010 C68 DD25以下选项中不是C语句的是A int iiprintf d\ni BC a 5c 10 D26以下合法的C语言赋值语句是Aa b 58 B k int ab C a 58 b 58 D --i27以下程序的输出结果是A0 B1 C3 D不确定的值mainint x 10y 3printf d\ny xy28设c语言中一个int型数据在内存中占2个字节则unsigned int 型数据的取值范围为A0~255 B0~32767 C0~65535 D0~214748364729若变量已正确定义为int类型要给abc输入数据以下正确的输入语句是Aread abcBscanf dddabcscanf DDDabcDscanf dddabc30若变量已正确定义为float类型要通过赋值语句scanffffabc给A赋值10B赋予22C赋予33以下不正确的输入形式是10 B100220330 C100 D10 2222 220 330 333331设有说明char wint xfloat ydouble z则表达式wxz-y值的数据类型为 Afloat B char Cint D double32若变量已正确定义要将a和b中的数进行交换下面选项中不正确的是 Aa abb a-ba a-b Bt aa bb t Ca tt bb a Dt bb aa t33若变量已正确定义以下程序段的输出结果是A输出格式说明与输出项不匹配输出无定值B5170000 C5168000 D5169000x 516894printf f\n int x100005 float 100034若有以下程序段c3的值是A0 B12 C05 D1int c1 1c2 2c3c3 c1c235若有以下程序段其输出结果是00-10 B005 C-103-10 D33-10int a 0b 0c 0c a- a-5 a bb3printf ddd\nabc36若已知变量的类型说明如下int kab unsinged long w 5 double x 142则以下不符合c语言的表达式是Ax -3 Bw -2 Ck a 2b 3ab Da a- b 4 a 337以下程序的输出结果是Aa 2 b f Ba 2b 5 Ca db d Da db dmainint a 2b 3printf a db d\nab38 若int 类型占两个字节则以下程序段的输出是A –1-1B –132767C –132768D –165535int a -1printf du\naa39下列运算符中优先级最高的运算符是A B C- D40下列运算符中优先级最低运算符是A B C〈 D41为表示关系 x≥y≥z 应使用的C语言表达式是A x y y zB x y AND y zC x y zD x y y z42若有以下定义则能使值为3的表达式是 int k 7x 12Ax k-k5 Bx k 5 C x k-k5 D x k - k 543 设abcdmn均为int型变量且a 5b 6c 7d 8m 2n 2则逻辑表达式 m a b nc d 运算后n的值为A0 B1 C2 D344 假定wxyzm均为int型变量有如下程序段w 1 x 2 y 3 z 4m w x wxm m y mym m z mz则该程序运行后m的值是A4 B3 C1 D245以下程序的输出是A0 B1 C2 D3mainint a 2b -1c 2if b aif b 0 c 0printf d\nc46设ab 和c 都是int 型变量且 a 3b 4c 5则以下的表达式中值为0的表达式是A abB a bC abcb-cD a b c147以下程序的输出是A0 B1 C2 D3mainint a 2b -1c 2if a bif b 0 c 0else c 1printf d\nc48以下程序的输出是A1 B2 C3 D4mainint w 4x 3y 2z 1printf d\n w xwz yzx49已知int x 10y 20z 30以下语句执行后xyz的值是 if x y z xx yy zAx 10y 20z 30 Bx 20y 30z 30Cx 20y 30z 10 Dx 20y 30z 2050以下程序的运行结果是main int m 5if m 5 printf d\nmelse printf d\nm--A4 B5 C6 D751若执行以下程序时从键盘上输入3和4则输出结果是A14 B16 C18 D20mainint absscanf ddabs aif a b s bs sprintf d\ns52运行以下程序输出A BC D有语法错误不能通过编译mainint k -3if k 0 printf \nelse printf \n53以下程序的输出结果是main int x 2y -1z 2if x yif y 0 z 0else z z1printf d\nzA3 B2 C1 D054为了避免在嵌套的条件语句if-else中产生二义性c语言规定else子句总是与配对A上下位置在同一列的if Belse前面最近的ifCelse之后最近的if D同一行上的if55以下不正确的语句为Aif x y Bif x y x 0 x y Cif x y xyDif x y scanf dx else scanf dy56当a 1b 3c 5d 4时执行完下面一段程序后x的值是if a bif a d x 1elseif a cif b d x 2else x 3else x 6else x 7A1 B2 C3 D657以下程序段int k 10while k 0 k k1则下面描述中正确的是Awhile循环执行10次 B循环是无限循环C循环体语句一次也不执行 D循环体语句执行一次58 以下程序中while循环的循环次数是main int i 0while i 10if i 1 breakiA1 B10 C6 D死循环不能确定次数59以下程序中while循环的循环次数是main int i 0while i 10if i 1 contimueif i 5 breakiA1 B10 C6 D死循环不能确定次数60若执行以下程序时从键盘上输入9则输出结果是A 11B 10C 9D 8mainint nscanf "d"nif n 10 printf "d\n"nelse printf "d\n"n--61有以下程序段int k 0while k 1 kwhile 循环执行的次数是A 无限次B 有语法错不能执行C 一次也不执行D 执行1次62对于下面①②两个循环语句是正确的描述①while 1 ②forA①②都是无限循环 B①是无限循环②错误C①循环一次②错误 D①②皆错误63语句while E 中的表达式E等价于AE 0 BE 1 CE 0 DE 164下面程序段运行结果是x y 0while x 15 yx x ypirntf ddyxA207 B612 C208 D82065设有以下程序段 int x 0s 0while x 0 s xprintf ds 则A运行程序段后输出0 B运行程序段后输出1C程序段中的控制表达式是非法的 D程序段执行无限次66下面程序段的运行结果是int n 0 while n 2 printf dnA2 B3 C4 D有语法错误67下面程序的运行结果是includemain int num 0while num 2numprintf d numA1 B1 2 C1 2 3 D1 2 3 468c语言中while和do-while循环的主要区别是Ado-while的循环体至少无条件执行一次Bwhile的循环控制条件比do-while的循环控制条件严格Cdo-while允许从外部转到循环体内Ddo-while的循环体不能是复合语句69下面有关for循环的正确描述是Afor循环只是能用于循环次数已经确定的情况Bfor循环是先执行循环体语句后判断表达式C在for循环中不能用break语句跳出循环体Dfor循环的循环体语句中可以包含多条语句但必须用花括号括起来70对for 表达式1 表达式3 可以理解为Afor 表达式10表达式3 Bfor 表达式1表达式1表达式3 Cfor 表达式11表达式3 Dfor 表达式1表达式3表达式3 71若i为整型变量则以下循环执行次数是for i 2i 0 printf di--A无限次 B0次 C1次 D2次72下面程序的运行结果是includemain int y 10do y-- while --yprintf d\ny--A-1 B1 C8 D073下面程序的运行结果是includemain int a 1b 10do b- aa while b-- 0printf a db d\nabAa 3b 11 Ba 2b 8 Ca 1b -1 Da 4b 974下面程序段的运行结果是for y 1y 10 y x 3yx1 x-1printf x dy dxyAx 27y 27 Bx 12y 13 Cx 15y 14 Dx y 2775下列程序段不是死循环的是A int i 100 while 1 i i1001if i 100 break Bfor Cint k 0 do k while k 0 Dint s 36while s --s76以下程序段输出结果是A 9 B1 C11 D10int k j sfor k 2k 6kks 1for j k j 6j s jprintf d\ns77以下程序段输出结果是A12 B15 C20 D25int i jm 0for i 1i 15i 4for j 3j 19j 4 mprintf d\nm78以下程序段输出结果是A10 B9 C 10 D99 8 9 8 8 7 8 7 7 6int n 10while n 7n--printf d\nn79以下程序段输出结果是A 1 B3 0 C1 –2 D死循环int x 3doprintf 3d x- 2while --x80以下程序段输出结果是A15 B14 C不确定 D0mainint i sumfor i 1i 6i sum sumprintf d\nsum81以下程序的输出结果是A741 B852 C963 D875421mainint y 10for y 0y--if y3 0printf d--y continue82若x是int型变量以下程序段的输出结果是A 3 B3 C3 D344 4 45 55 5for x 3 x 6xprintf x2 d d\n x83以下程序的输出结果是A B C Dmainint ifor i 1 i 5 iif i2 printfelse continueprintfprintf \n84 以下叙述不正确的是Ado-while语句构成的循环不能用其他语句构成的循环来代替Bdo-while语句构成的循环只能用break语句退出C用do-while语句构成循环时只有在while后的表达式为非零时结束循环D用do-while语句构成循环时只有在while后的表达式为零时结束循环85C语言中的简单数据类型有A 整型实型逻辑型B 整型实型字符型C 整型字符型逻辑型D 整型实型逻辑型字符型86C语言中字符char型数据在微机内存中的存储形式是A 反码B 补码C EBCDIC码D ASCII码87设有定义语句char a \72则变量aA 包含1个字符B 包含2个字符C 包含3个字符D 包含4个字符88C语言中不合法的字符常量是A\xff B\65 C D\028 89C语言中不合法的字符串常量是A121 By C \n\n DABCD\x6d90判断char型变量c是否为大写字母的最简单且正确的表达式是AA c Z B c A c ZC A c AND Z c D c A c Z91以下程序的输出结果是A因输出格式不合法无正确输出 B6590CAY D6589mainchar c1 Ac2 Yprintf dd\nc1c292以下程序段的输出结果是AA Ba CZ Dzmainchar x Ax x Ax Z x32 xprintf c\nx93以下程序的输出结果是A67C BBC CCD D不确定的值mainchar ch1ch2ch1 A5-3ch2 A5-3printf dc\nch1ch294以下程序的输出结果使A11 B20 C21 D31 func int aint bint cc abreturn cmainint x 6y 7z 8rr func x--yxy z--printf d\nr95以下程序的输出结果是A-1 B0 C1 D2 mainint i 2pp f ii1printf d\npint f int aint bint cc aif a b c 1else if a b c 0else c -1return c96以下程序的输出结果使A0 B1 C6 D无定值fun int a int b int cc abmainint cfun 23cprintf d\nc97以下程序的输出结果是A5500000 B3000000 C4000000 D825 double f nint i double ss 10for i 1 i n i s 10ireturn smainint im 3 float a 00for i 0i mi a f iprintf f\na98以下程序的输出结果是A因变量无定义输出不定值 B0 C-1 D1 include stdiohmainprintf d\nNULL99以下程序的输出结果是A523 B-5-12-7 C-5-12-17 D5-2-7void sub int x int y int zz y-xmainint abcsub 105a sub 7ab sub abc printf ddd\nabc100以下程序的输出结果是A4 B6 C8 D10mainint k 2 m 4 n 6int pk kpm mpp n pk pmprintf d\nn101以下程序的输出结果是A 43 B23 C 34 D 32 void fun float a float bfloat wa aaw a a b b wmainfloat x 20 y 30float px x py yfun pxpyprintf 20f20f\nxy102以下程序的输出结果是A 9000000B 1500000C 8000000D 10500000void sub float x float y float zy y-10z zxmainfloat a 25b 90 pa pbpa a pb bsub b-a pa paprintf f\n a103在c语言中引用数组元素时其数组下标的数据类型允许是A整型常量 B整型表达式 C整型常量或整型表达式D任何类型的表达式104以下对一维整型数组a的正确说明是Aint a 10 Bint nscanf dn int a[n]Cint n 10a[n] Ddefine SIZE 10 int [SIZE]105以下能对一维数组a进行正确初始化的语句是Aint a[10] 00000 Bint a [10]Cint a[] 101256 Dint a[] 101106以下对二维数组a的正确说明是Aint a[3][] Bfloat a 34 Cdouble a[1][4] Dfloat a 3 4 107若有说明int a[3][4]则对a数组元素的正确引用是Aa[2][4] Ba[13] Ca[11][0] Da 2 1108若有说明int a[3][4]则对a数组元素的非法引用是Aa[0][21] Ba[1][3] Ca[4-2][0] Da[0][4]109以下能对二维数组a进行正确初始化的语句是Aint a[2][] 101 523 Bint a[][3] 123 456Cint a[2][4] 123 45 6 Dint a[][3] 101 11110以下不能对二维数组a进行正确初始化的语句是Aint a[2][3] 0 Bint a[][3] 12 0Cint a[2][3] 12 34 56 Dint a[][3] 123456111 若有说明int a[3][4] 0 则下面正确的叙述是A只有元素a[0][0]可得到初值0 B数组a中每个元素均可得到初值0C数组a中各元素都可得到初值但不一定为0 D此说明语句不正确112 若有说明int a[][4] 00 则下面不正确的叙述是A数组a的每个元素都可得到初值0 B二维数组a的第一维大小为1C因为二维数组a中第二维大小的值除以初值个数的商为1故数组a的行数为1D只有元素a[0][0]和a[0][1]可得到初值0其余元素均得不到初值0113若二维数组a有m列则计算任一元素a[i][j]在数组中位置的公式为假设a[0][0]位于数组的第一个位置上Aimj BjmI Cimj-1 Dimj1114对以下说明语句的正确理解是 int a[10] 678910A将5个初值依次赋给a[1]至a[5] B将5个初值依次赋给a[0]至a[4] C将5个初值依次赋给a[6]至a[10] D因为数组长度与初值的个数不相同所以此语句不正确115若有说明int a[][3] 1234567 则a数组第一维的大小是A2 B3 C4 D无确定值116定义如下变量和数组int kint a[3][3] 123456789则下面语句的输出结果是for k 0k 3k printf da[k][2-k]A3 5 7 B3 6 9 C1 5 9 D1 4 7117下面是对s的初始化其中不正确的是Achar s[5] abc Bchar s[5] abcCchar s[5] Dchar s[5] abcdef118下面程序段的运行结果是char c[5] ab\0c\0printf scAab Bab Cab_c Dab 其中_表示空格119对两个数组a和b进行如下初始化char a[] ABCDEFchar b[] ABCDEF则以下叙述正确的是Aa与b数组完全相同 Ba与b长度相同Ca和b中都存放字符串 Da数组比b数组长度大120有两个字符数组ab则以下正确的输入语句是Agets ab Bscanf ssabCscanf ssab Dgets a gets b121有字符数组a[80]和b[80]则正确的输出语句是Aputs ab Bprintf ssa[]b[]Cputchar ab Dputs a puts b122有下面的程序段char a[3]b[] Chinaa b printf sa 则A运行后将输出China B运行后将输出ChC运行后将输出Chi D编译出错123判断字符串a和b是否相等应当使用Aif a b Bif a b Cif strcpy ab Dif strcmp ab124判断字符串s1是否大于字符串s2应当使用Aif s1 s2 Bif strcmp s1s2Cif srtcmp s2s1 0 Dif strcmp s1s2 0125下述对C语言字符数组的描述中错误的是A字符数组可以存放字符串B字符数组的字符串可以整体输入输出C可以在赋值语句中通过赋值运算符对字符数组整体赋值D不可以用关系运算符对字符数组中的字符串进行比较126以下正确的说法是建立函数的目的之一是A提高程序的执行效率 B提高程序的可读性C减少程序的篇幅 D减少程序文件所占内存127以下正确的说法是A用户若需调用标准库函数调用前必须重新定义B用户可以重新定义标准库函数若如此该函数将失去原有含义C系统根本不允许用户重新定义标准库函数D用户若需调用标准库函数调用前不必使用预编译命令将该函数所在文件包括到用户源文件中系统自动去调128以下正确的函数定义形式是Adouble fun int xint y Bdouble fun int xint y Cdouble fun int xint y Ddouble fun int xy129以下正确的函数形式是Adouble fun int xint y z xyreturn zBfun int xy int z return zCfun xy int xydouble z z xyreturn zDdouble fun int xint y double z z xyreturn z130以下正确的说法是在C语言中A实参和与其对应的形参各占用独立的存储单元B实参和与其对应的形参共占用一个存储单元C只有当实参和与其对应的形参同名时才共占用存储单元D形参是虚拟的不占用存储单元131以下不正确的说法是 C语言规定A实参可以是常量变量或表达式 B形参可以是常量变量或表达式C实参可以为任意类型 D形参应与其对应的实参类型一致132以下正确的说法是A定义函数时形参的类型说明可以放在函数体内Breturn后边的值不能为表达式C如果函数值的类型与返回值类型不一致以函数值类型为准D如果形参与实参的类型不一致以实参类型为准133 C语言允许函数值类型缺省定义此时该函数值隐含的类型是Afloat型 Bint型 Clong型 Ddouble型134 C语言规定函数返回值的类型是由Areturn语句中的表达式类型所决定B调用该函数时的主调函数类型所决定C调用该函数时系统临时决定D在定义该函数时所指定的函数类型所决定135下面函数调用语句含有实参的个数为Func exp1exp2 exp3exp4exp5A1 B2 C4 D5136以下错误的描述是函数调用可以A出现在执行语句中 B出现在一个表达式中C做为一个函数的实参 D做为一个函数的形参137以下正确的描述是在C语言程序中A函数的定义可以嵌套但函数的调用不可以嵌套B函数的定义不可以嵌套但函数的调用可以嵌套C函数的定义和函数的调用均不可以嵌套D函数的定义和函数的调用均可以嵌套138若用数组名作为函数调用的实参传递给形参的是A数组的首地址 B数组第一个元素的值C数组中全部元素的值 D数组元素的个数139 已有以下数组定义和f函数调用语句则在f函数的说明中对形参的说明中对形参数组array的错误定义方式为int a[3][4] f aAf int array[ ][6] Bf int array[3][ ]Cf int array[ ][4] Df int array[2][5]140 若使用一维数组名作参数则以下正确的说发是A必须在主调函数中说明此数组的大小B实参数组类型与形参数组类型可以不匹配C在被调函数中不需要考虑形参数组的大小D实参数组名与形参名必须一致141 以下正确的说法是如果在一个函数中的复合语句中定义了一个变量则该变量 A只在复合语句中有效 B在该函数中有效C在本程序范围内均有效 D为非法变量142以下不正确的说法是A在不同的函数中可以使用相同名字的变量B形式参数是局部变量C在函数内定义的变量只能在本函数范围内使用D在函数内的复合语句中定义的变量在本函数范围内有效143 凡是函数中未指定存储类别的局部变量其隐含的存储类别为A自动autoB静态staticC外部externD寄存器register144 以下程序的运行结果是sub int xint yint zz y-xmain int abcsub 105a sub 7ab sub abcprintf 4d4d4d\nabcA5 2 3 B-5-12-7 C-5-12-17 D5-2-7145 以下程序能对两个整型变量的值进行交换以下正确的说法是main int a 10b 20printf 1 a db d\nabswap abprintf 2 a db d\nabswap int pint q int t t pp tA该程序完全正确 B该程序有错只要将语句swap ab 中的参数改为ab 即可 C该程序有错只要将swap 函数中的形参p和q以及t均定义为指针变量即可 D以上说法都不正确146 以下程序中调用scanf函数给变量a输入数值的方法是错误的其错误原因是main int pqabp aprintf input ascanf dpAp表示的是指针变量p的地址Bp表示的是变量a的值而不是变量a的地址Cp表示的是指针变量p的值Dp只能用来说明p是一个指针变量147 已有定义 int k 2int prt1prt2且prt1和prt2均已指向变量k下面不能正确执行的赋值语句是Ak prt1prt2 Bprt2 k Cprt1 prt2 Dk prt1 prt2148 若有说明int p1p2m 5n以下均是正确赋值语句的选项是Ap1 mp2 p1 Bp1 mp2 np1 p2Cp1 mp2 p1 Dp1 mp2 p1149 设p1和p2是指向同一个字符串的指针变量c为字符变量则以下不能正确执行的赋值语句是Ac p1p2 Bp2 c Cp1 p2 Dc p1 p2150 下面判断正确的是Achar a china等价于char aa chinaBchar str[10] china 等价于char str[10]str[] chinaCchar a china等价于char ss chinaDchar c[4] abcd[4] abc等价于char c[4] d[4] abc151 下面能正确进行的字符串赋值操作的是Achar s[5] ABCDE Bchar s[5] ABCDECchar ss ABCDE Dchar sscanf ss152 若有以下定义则对a数组元素的正确因用是int a[5]p aAa[5] Ba2 C p5 D a2153 若有定义int a[2][3]则对a数组的第i行第j列元素值得正确引用为A ai jB ai [j]C aijD ai j154 若有以下定义和语句则对a数组元素地址的正确引用为int a[2][3] p [3] p aA p2 Bp[2] Cp[1]1 D p1 2155 以下与int q[5]等价的定义语句是Aint q[5] Bint q Cint q[5] Dint q [5]156 若有定义int a[] 24681012141618202224 q[4]k则下面程序段的输出是for k 0k 4k q[k] a[k3]printf d\nq[3][0]A8 B16 C20 D输出项不合法结果不确定157 语句int prt 的含义是Aprt是指向一维数组的指针变量 Bprt是指向int型数据的指针变量Cprt是指向函数的指针该函数返回一个int型数据Dprt是一个函数名该函数的返回值是指向int型数据的指针158库函数strcpy用以复制字符串若有以下定义和语句char str1[] stringstr2[8]str3str4 string则对库函数strcpy的不正确调用是A strcpy str1HELLO1B strcpy str2HELLO2C strcpy str3HEELO3D strcpy str4HELLO4 159若已定义int a[] 0123456789 p ai其中0 i 9则对a数组元素的引用不正确的是Aa[p-a] B a[i] Cp[i] D ai160以下程序段给数组所有元素输入数据应在下划线处填入的是Aa i B a[i1] Cai Da[i]mainint a[10] i 0while i 10 scanf d___161以下程序的输出结果是A3 B4 C1 D2mainint a[10] 12345678910 p aprintf d\n p2162以下程序的输出结果是A不确定的值 B3 C2 D 1mainint n[2] 0 ijk 2for i 0 i k ifor j 0 j k j n[j] n[i]1printf d\nn[k]163以下程序的输出结果是A 17B 18C 19D 20mainint a[] 246810 y 1 xpp a[1]for x 0 x 3 x y pxprintf d\ny164以下程序的输出结果是A 6 B8 C 4 D2mainint a[] 2468 p a ifor i 0 i 4 i a[i] pprintf d\na[2]165以下程序的输出结果是A 720 B120 C24 D6f int b[ ]int nint ir 1for i 0i ni r rb[i]return rmainint x a[ ] 23456789x f a3printf d\nx166以下程序中若第一个printf语句输出的是194则第二个printf语句的输出结果是A212 B204 C1a4 D1a6mainint a[] 1234567890 pp aprintf "x\n"pprintf "x\n"p9167以下程序的输出结果是A 4 4 B2 2 C2 4 D4 6mainint a[5] 246810 pkp a k pprintf "d " pprintf "d\n"k168当运行以下程序时输入三行每行都是在第一列上开始代表回车键abcdef则程序的输出结果是Aabcdef B a Ca Dab b bc cd cdefdefinclude "stdioh"define N 6mainchar c[N]int i 0for i 0i Nic[i] getcharfor i 0i Niputchar c[i]169若有定义和语句int c[4][5] cp [5] cp c则对c数组元素的引用正确的是A cp1B cp3C cp1 3D cp2170若已定义int a[4][3] 123456789101112 prt [3] ap a[0] 则能够正确表示数组元素a[1][2]的表达式是A prt1 [2]B p5C prt1 2D a1 2171若有定义和语句int a[4][3] 123456789101112 prt [3] ap[4] i 则不能正确表示a数组元素的表达式是Aa[4][3] Bp[0][0] Cprt[2][2] D p1 [1] 172以下程序的输出结果是A 23B 26 C33 D36mainint aa[3][3] 2 4 6 ip aa[0][0] for i 0i 2 iif i 0aa[i][i1] p1else pprintf "d"pprintf "\n"173以下程序的输出结果是A 60 B68 C99 D108mainint a[3][4] 1357911131517192123 int p [4] aijk 0for i 0i 3ifor j 0j 2jk pi jprintf "d\n"k174以下程序的输出结果是A 159 B147 C357 D369mainint ix[3][3] 123456789for i 0i 3iprintf "d"x[i][2-i]175若有定义语句int p [M] 其中的标识符p是AM个指向整型变量的的指针B指向M个变量的函数指针CD] aeiouB char s s goodC char s[5] goodD char s[5] s good177以下程序段的输出结果是char str[ ] ABCDp strprintf d\n p4A 68B 0C 字符D的地址 D不确定的值178以下程序段的输出结果是printf d\nstrlen ATS\n012\1\\A 11B 10C 9D 8179当运行以下程序是输入OPEN THE DOOR〈CR〉代表ENTER键则输出结果是AOpen tHE door Bopen the doorC OPEN THE DOOR DOpen The Doorinclude stdiohchar fun char cif c Zc A c- A-areturn cmainchar s[81] p sgets swhile pp fun p putchar p pputchar \n180以下程序的输出结果是AGFEDCBA BAGADAGA CAGAAGAG DGAGGAGAinclude stdiohinclude stringhvoid fun char wint mchar sp1p2p1 w p2 wm-1while p1 p2s p1 p1 p2-- p2 smainchar a[ ] ABCDEFGfun astrlen aputs a181以下程序的输出结果是 ABCD pfor p s p s4p printf s\np182设有如下定义Char aa[2] abcdABCD则以下叙述中正确的是Aaa数组元素中的值分别是字符串abcd 和ABCDBaa是指针变量它指向含有两个数组元素的字符型一维数组Caa数组的两个元素分别存放的是含有四个字符的一维数组的首地址Daa数组的两个元素中各自存放了字符a和A的地址183以下程序的输出结果是A6385 B69825 C63825 D693825mainchar ch[2][5] 69378254 p[2]int ijs 0for i 0 i 2 i p[i] ch[i]for i 0i 2ifor j 0 p[i][j] \0p[i][j] 9 j 2s 10sp[i][j]-0printf d\ns184以上程序的输出结果是A ABCDEFGHIJKLB ABCD CABCDEFGHIJKLMNOP D AEIMmainchar alpha[6] ABCDEFGHIJKLMNOPQRSTUVWXchar pint ip alphafor i 0i 4i printf sp[i]printf \n185有以下程序mainint m 12n 34printf "dd"mn printf "dd\n"nm程序运行后的输出结果是A12353514 B12353513 C12343514 D1******* 有以下语句int bchar c[10]则正确的输入语句是Ascanf "ds"b B scanf "ds"bCscanf "ds"b Dscanf "ds"b187有以下程序main int abd 25a d109b a -1printf "dd\n"ab程序运行后的输出结果是A61 B21C60 D20有以下程序mainint i 1j 2k 3if i 1 j 3k 3printf "d d d\n"ijk程序运行后的输出结果是A1 2 3 B2 3 4C2 2 3 D2 3 3有以下程序mainchar a[7] "a0\0a0\0" int iji sizeof a j strlen aprintf "d d\n"ij程序运行后的输出结果是A2 2 B7 6 C7 2 D6 2以下能正确定义一维数组的选项是Aint a[ ] 012345 Bchar a[] 012345 Cchar a ABC Dint a[5] "0123"有以下程序运行后的输出结果是 int f1 int xint y return x yxy int f2 int xint y return x yyxmainint a 4b 3c 5d 2efge f2 f1 ab f1 cdf f1 f2 ab f2 cdg abcd-e-fprintf "ddd\n"efgA437 B347 C527 D257已有定义char a[] "xyz"b[] xyz 以下叙述中正确的是 A数组a和b的长度相同 Ba数组长度小于b数组长度 Ca数组长度大于b数组长度 D上述说法都不对有以下程序运行后的输出结果是void f int xint y int tt xx yy tmain int a[8] 12345678 ipqp aq a[7] while p q f pq pq--for i 0i 8i printf "d"a[i]A82345671B56781234 C12345678 D8*******有以下程序mainint a[3][3]pip a[0][0]for i 0i 9i p[i] ifor i 0i 3i printf "d"a[1][i]程序运行后的输出结果是A0 1 2 B1 2 3 C2 3 4 D3 4 5以下叙述中错误的是A对于double类型数组不可以直接用数组名对数组进行整体输入或输出 B数组名代表的是数组所占存储区的首地址其值不可改变 C当程序执行中数组元素的下标超出所定义的下标范围时系统将给出"下标越界"的出错信息 D可以通过赋初值的方式确定数组元素的个数有以下程序define N 20fun int a[]int nint mint ijfor i mi ni-- a[i1] a[i]mainint ia[N] 12345678910fun a29for i 0i 5i printf "d"a[i]程序运行后的输出结果是A10234B12344 C12334 D12234有以下程序main int a[3][2] 0 ptr [2]ijfor i 0i 2iptr aiscanf "d"ptr ptrfor i 0i 3ifor j 0j 2j printf "2d"a[i][j]printf "\n"若运行时输入1 2 3 则输出结果是A产生错误信息 B1 0 C1 2 D1 02 03 0 2 00 0 0 0 3 0198有以下程序prt int mint nint ifor i 0ii1mainint a[] 12345 iprt a5for i 0i 5iprintf "d"a[i]程序运行后的输出结果是A23456 B12345 C34567 D23451 以下语句或语句组中能正确进行字符串赋值的是Achar spsp "right" Bchar s[10]s "right"Cchar s[10]s "right" Dchar sp "right"有以下程序mainchar s[] "159"pp sprintf "c"p printf "c"p程序运行后的输出结果是A15 B16 C12 D59 A for B 8d C if_G3 D WND -sub do IF voidCase Size a2bc define204下面四个选项中全部是不正确的八进制数或十六进制数的选项是A 016 0x8f 018B 0abc 017 0xaC 010 -0x11 0x16D 0a12 7ff -123205以下正确的叙述是A 在C程序中每行中只能写一条语句B 若a是实型变量C程序中允许赋值a 10因此实型变量中允许存放整型数C 在C程序中无论是整数还是实数都能被准确无误地表示D 在C程序中求余数运算符是只能用于整数运算的运算符206下面四个选项中均是合法的浮点数的选项是A 1e1 5e-94 03e2B 60 12e-4 -8e5C 123e 12e-4 2e-1D -e3 8e-4 5e-0207已知各变量的类型说明如下int k a w 5b float x 142则以下不符合C语言语法的表达式是A 124 -3B w -2xC k a 2 b 3 abD a a- b 4 a 3208以下不正确的叙述是A 在C程序中逗号运算符的优先级最低B 在C程序中APH和aph是两个不同的变量C 若a和b类型相同在计算了赋值表达式a b后b中的值将放入a中而b 中的值不变D 当从键盘输入数据时对于整型变量只能输入整型数值对于实型变量只能输入实型数值209sizeof double 是A 一种函数调用B 一个双精度型表达式C 一个整型表达式D 一个不合法的表达式210若有定义int a 8b 5c执行语句c ba04后c的值为A04 B1 C20 D0211若变量a是char类型并执行了语句a B16则正确的叙述是Aa的值是字符675 Ba的值是浮点型C不允许字符型和浮点型相加 Da的值是字符B的ASCII值加上1 212在C语言中合法的长整型常数是A0L B4962710 C324562 D 216D213以下选项中不合法的字符常量是AB B\010 C6 DD214设abcdmn均为int型变量且a 5b 6c 7d 8m 2n 2则逻辑表达式 a b n 运算后n的值为A0 B1 C2 D3215putchar函数可以向终端输出一个A 整型变量表达式B 实型变量值C 字符串D 字符或字符型变量值216printf函数中用到格式符5s其中数字5表示输出的字符串占用5列如果字符串长度大于5则输出按方式A 从左起输出该字符串右补空格B 按原字符长从左向右全部输出C 右对齐输出该字符串左补空格D 输出错误信息217阅读以下程序当输入数据的形式为251310 注表示回车则正确的输出结果为mainint xyzscanf dddxyzprintf xyz d\nxyzA xyz 48B xyz 35C xz 35D 不确定值218若下面程序的输入形式为AΔBΔCΔ表示空格程序输出结果为mainchar ch1ch2ch3scanf cccch1ch2ch3printf cccch1ch2ch3A AΔBCB ABC C AΔBD ABΔC219已知ch是字符型变量下面不正确的赋值语句是A ch abB ch \0C ch 79D ch 59220设有语句 char a \72 则变量 aA 包含1个字符B 包含2个字符C 包含3个字符D 说明不合法221执行下面程序中的输出语句 a 的值是A 65B 20C 15D 10mainint aprintf "d\n" a 35a4a5222设有语句 int a 3 则执行了语句 a a- aa 后变量 a 的值是A 3B 0C 9D -12223下列关于单目运算符--的叙述中正确的是A 它们的运算对象可以是任何变量和常量B 它们的运算对象可以是char型变量和int型变量但不能是float型变量C 它们的运算对象可以是int型变量但不能是double型变量和float型变量D 它们的运算对象可以是char型变量int型变量和float型变量224在 C 语言中如果下面的变量都是 int 类型则输出结果是sum pad 5 pad sum pad padprintf "d\n"padA 7B 6C 5D 4225以下程序的输出结果是includemainint i 010 j 10printf "dd\n"i j--A 1110B 910C 0109D 109226已知在ASCII 代码中字母A的序号为65以下程序的输出的结果是includemainchar c1 A c2 Cprintf "dc\n"c1c2A 因输出格式不合法输出错误信息 B65C CAY D6567227以下程序的输出结果是includeincludemainint a 1b 4c 2float x 105 y 40 zz ab csqrt double y 12cxpritnf "f\n"zA 14000000B 015400000C 13700000D 14900000 228以下程序的输出结果是includemainint a 2c 5printf "a db d\n"acA a 2b 5B a 2b 5C a db dD a db d229以下程序的输出结果是includemainint a bd 241a d1009b -1 -1。

《C语言程序设计(第2版)》试题库 期末试卷一

《C语言程序设计(第2版)》试题库 期末试卷一

期末试卷一一、单项选择题(每题1分,共45分)1.在计算机系统中,可以执行的程序是()A.源程序B.汇编语言程序C.机器语言程序D.ASCII码2.C语言程序的基本单位是()A.程序行B.语句C.函数D.字符3.下列对C语言程序的书写格式的描述,()是正确的。

A.C语言程序中,每行只能写一条语句B.C语言程序书写时通常采用“缩排”方式C.C语言程序的书写中要求每行都要以分号作结尾D.注释行必须放在程序的头或程序的尾4.启动TC V2.0环境后,打开一个C语言源程序的快捷键是()A.F1 B.F2 C.F3 D.F45.C语言源程序文件file.c经系统编译、连接后,生成的文件名为()A.file.c B.file C.file.obj D.file.exe6.下列选项中,合法的C语言标识符是()A._abc*2 B._ch_er C.a-1 D.a7&b7.以下所列的C语言常量中,错误的是()A.0xFF B.1.2e0.5 C.2L D.’\72’8.以下变量x,y,t均为double类型且已正确赋值,不能正确表示数学式子的C语言表达式是()A.x/y*z B.x*(1/(y*z))C.x/y*1/z D.x/y/z9.下列程序运行后的输出结果是()main(){ int y=3,x=3;printf(“%d\n”,++x+y++);}A.5 B.8 C.7 D.610.若已正确定义x和y为double类型,则表达式x=1,y=x+3/2的值是()A.1 B.2 C.2.0 D.2.511.在C语言中运算对象必须是整型的运算符是()A.% B./ C.= D.*12.若有以下定义:char a; int b; float c;则表达式a*b-c值的类型为()A.int B.char C.double D.float13.下列正确的C语言赋值语句的是()A.x=3,y=5 B.a=b=1 C.i++; D.y=int(x)14.有如下程序段:int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入是()A.10A 20B<CR> B.10 A 20 B<CR>C.10 A20B<CR> D.10A20 B<CR>15.有如下程序,输入数据:12345m678<CR>后,x的值是()#include <stdio.h>main( ){ int x; float y;scanf("%3d%f",&x,&y);}A.12345 B.123 C.45 D.34516.有如下程序,对应正确的数据输入是()#include<stdio.h>main( ){ float a,b;scanf("%f%f",&a,&b);printf("a=%f,b=%f\n",a,b);}A.2.04<CR> B.2.04,5.67<CR>5.67<CR>C.a=2.04,b=5.67<CR> D.2.045.67<CR>17.有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式是()A.132<CR> B.1,3,2<CR>C.a=1,b=3,c=2<CR> D.a=1 b=3 c=2<CR>18.已知字母A的ASCII码是65,以下程序的执行结果是()#include<stdio.h>main( ){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);}A.A,Y B.65,65 C.65,90 D.65,8919.以下程序的执行结果是()#include<stdio.h>main( ){ int a=2,b=5;printf("a=%%d,b=%%d\n",a,b);}A.a=%2,b=%5 B.a=2,b=5C.a=%%d,b=%%d D.a=%d,b=%d20.最适合解决选择结构“若x>0,则y=1;否则y=0;”的语句是()A.switch B.嵌套的if-else C.if-else D.if21.设整型变量x,y和z的值依次为3,2和1,则下列程序段的输出结果是()if(x>y)x=y;if(x>z)x=z;printf(″%d,%d,%d\n″,x,y,z);A.1,1,1 B.1,2,1 C.1,2,3 D.3,2,122.执行下列程序段后,变量x的值是()int a=8,b=7,c=6,x=1;if(a>6) if(b>7) if(c>8) x=2;else x=3;A.0 B.1 C.2 D.323.运行下列程序的输出结果是()main(){ int a1=1,a2=1,a3=1,a4=1;if (a1>0) a3++;if (a1>a2) a3--;else if (a1= =a2) a3++;else a3--;printf(″%d,%d,%d,%d\n″,a4,a3,a2,a1);}A.1,1,1,1 B.1,2,3,4C.4,3,2,1 D.1,3,1,124.执行下列语句后,整型变量x的值是()switch (x=1) { case 0:x=10;break;case 1:switch (x=2) {case1:x=20;break;case2:x=30;}}A.30 B.20 C.10 D.125.以下说法中正确的是()A.continue和break只能用在循环体中B.continue只能用在循环体中C.break只能用在循环体中D.continue只能用在循环体外26.执行下列程序段的输出是()m=8;while (m>=5) m--,--m,n=m--- m;pritnf (″%d,%d″,m,n);A.2, 0 B.5,-1 C.5,0 D.5,127.设整型变量x的值为1,执行下列循环语句后,变量x 的值是()do x++; while (x++<2);A.2 B.3 C.4 D.528.执行下列语句后,变量k的值是()for (k=0;k<=5;k++) do k++;while (k<5);A.5 B.6 C.7 D.829.下列程序段中,不能使变量m的值等于10的程序段是()A.m=0; B.do m=0;while (m++<9); while (m++<10);C.for (m=8;m<10;m++); D.m=0;L:m++;if (m<10)goto L;30.下列语句中不正确的是()A.static int a[5]={1,2,3,4,5};B.static int a[5]={1,2,3};C.static int a[]={0,0,0,0,0};D.static int a[5]={0*5};31.说明:int a[10]; 则对a数组元素的正确引用是()A.a[10] B.a[3.5] C.a(5) D.a[10-10]32.下面程序的运行结果是()main(){int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i>3))%5;printf(“%2d”,a[i]);}}A.-4 0 4 0 4 B.-4 0 4 0 3C.-4 0 4 4 3 D.-4 0 4 4 033.以下程序的输出结果是()main(){int n[2]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+1;printf(“%d\n”,n[1]);}A.1 B.3 C.2 D.434.下面程序的输出是()main(){char s[]=”cat and mouse”;int j=0;while(s[j]!=’\0’) ++j;printf(“%d\n”,j);}A.11 B.0 C.12 D.1335.下面程序的运行结果是()main(){char a[10]=”student”;char b[10]=”boy”;int n;n=strlen(a)+strlen(b);printf(“%d”,n);}A.7 B.10 C.12 D.2036.以下程序的输出结果是()void fun(int a,int b,int c){ a=456;b=567;c=678;}main(){ int x=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}A.30,20,10 B.10,20,30C.456,567,678 D.678,567,45637.在C语言程序中,当调用函数时,下面说法正确的是()A.实参和形参各占一个独立的存储单元B.实参和形参可以共用存储单元C.可以由用户指定实参和形参是否共用存储单元D.前面都不正确38.下列变量中,哪类变量的生存期和作用域是不一致的()A.自动变量B.定义在文件最前面的外部变量C.静态内部变量D.寄存器变量39.C语言中形参的缺省存储类别是()。

C语言程序设计题库

C语言程序设计题库

C语言题库试题1有如下函数调用语句func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是A) 3 B) 4 C) 5 D) 有语法错2有以下程序#include <stdio.h>char fun(char x , char y){ if(x<y)return x;return y;}void main( ){ int a='9',b='8',c='7';printf("%c\n",fun(fun(a,b),fun(b,c)));}程序的执行结果是A)函数调用出错 B)8 C)9 D)73如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为()。

A.静态变量B.动态变量C.外部变量D.内部变量4若变量a、iI已正确定义,且i已正确赋值,合法的语句是A) a==1 B) ++i; C) a=a++=5; D) a=int(i);5设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是______。

A) 6.500000 B) 6 C) 5.500000 D) 6.0000006以下程序段的输出是_______#include "stdio.h"void main(){float a=57.666;printf(“%10.2f\n”,a);}A)_ _ _ _ _57.66 B)_57.66 C)_ _ _ _ _57.67 D)_57.677以下程序的输出结果是A)9 8 B)8 9 C)6 6 D)以上三个都不对#include “ math.h”main(){ double a=-3.0,b=2;printf(“ %3.0f %3.0f\n”,pow(b,fabs(a)),pow(fabs(a),b));以下程序段的输出结果是_______8#include "stdio.h"void main(){unsigned int i=65535;printf("%d\n",i);}A) 65535 B) 0 C) 有语法错误,无输出结果 D) -19若执行下面的程序时从键盘上输入3和4,则输出是A) 14 B) 16 C) 18 D) 20main(){ int a,b,s;scanf("%d %d",﹠a,﹠b);s=a;if(a〈b)s=b;s=s*s;printf("%d\n",s);}10有如下程序#include "stdio.h"void main(){int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}11该程序的输出结果是( )A) a=2,b=1 B) a=1,b=1C) a=1,b=0 D) a=2,b=2若有定义: float w; int a, b; 则合法的switch语句是A) switch(w) B) switch(a);{ case 1.0: printf("*\n"); { case 1 printf("*\n");case 2.0: printf("**\n"); case 2 printf("**\n");} }C) switch b D) switch(a+b){ case 1: printf("*\n"); { case 1: printf("*\n");default: printf("\n"); case 2: printf("**\n");case 1+2: printf("**\n"); default: printf("\n"); 有以下程序main(){ int i=10;printf("%d\n",++i);}12执行后输出结果是A. 9B. 10C. 11D. 813设以下变量均为int类型,则值等于7的表达式是A. (x=y=6,x+1,x+y)B. (x=y=6,y+1,x+y)C. (y=6,y+1,x=y,x+1)D. (x=6,x+1,y=6,x+y)14设有以下程序段int x=0,s=0;while(!x!=0)s+=++x;printf("%d",s);则A. 运行程序段后输出0B. 运行程序段后输出1C. 程序段中的控制表达式是非法的D. 程序段执行无限次15以下程序段_______。

C程序设计题库(含答案)

C程序设计题库(含答案)
else if(x<10.0) y = 1.0/x;
else y = 1.0;
printf("%f\n",y);
}
A.0.000000B.0.250000C.0.500000D.1.000000
(3)下列程序的运行结果是( )
#include <stdio.h>
void main()
{
int a = 2, b = -1, c = 2;
答案:B
4、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)
A、6.500000 B、6 C、5.500000 D、6.000000
5、以下的选择中,正确的赋值语句是()。
A) a=1,b=2 B) j++ C) a=b=5; D) y=int(x)
A) 10<回车>B) 10.0,22.0,33.0<回车>
22<回车>
33<回车>
C) 10.0<回车> D) 10 22<回车>
22.0 33.0<回车> 33<回车>
答案:B
2.三大结构
(1)下列程序的运行结果是()
#include <stdio.h>
void main()
{
char c1 = '6', c2 = '0';
B.形参可以是常量,变量或表达式
C.实参可以为任意类型
D.如果形参和实参的类型不一致,以形参类型为准
9.C语言规定,函数返回值的类型是由( )决定的。
A. return语句中的表达式类型

c语言程序设计考试题库及答案

c语言程序设计考试题库及答案

c语言程序设计考试题库及答案1. 选择题1.1 下列关于C语言的描述,错误的是:A. C语言是一种过程式编程语言B. C语言支持面向对象编程C. C语言支持结构化编程D. C语言具有丰富的库函数答案:B1.2 在C语言中,以下哪个关键字用于定义一个函数?A. structB. intC. voidD. function答案:C1.3 下列选项中,哪个不是C语言中的合法变量名?A. _myVarB. myVar2C. 2ndVarD. var$答案:D2. 填空题2.1 在C语言中,用于定义一个整型变量的关键字是______。

答案:int2.2 C语言中,用于输入数据的库函数是______。

答案:scanf2.3 C语言中,用于输出数据的库函数是______。

答案:printf3. 简答题3.1 简述C语言中数组的定义方式。

答案:在C语言中,数组可以通过指定数据类型和数组大小来定义。

例如,定义一个整型数组可以写作:int arrayName[arraySize];。

3.2 解释C语言中的指针是什么,并给出一个指针的定义示例。

答案:指针是一种变量,它存储的是另一个变量的内存地址。

定义指针的示例:int *ptr; 这里ptr是一个整型指针。

4. 编程题4.1 编写一个C语言程序,计算并输出100以内所有偶数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```4.2 编写一个C语言函数,实现字符串反转的功能。

答案:```cvoid reverseString(char *str) {int length = 0;while (str[length] != '\0') {length++;}for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}```。

C语言程序设计题库及答案

C语言程序设计题库及答案

C语言程序练习题一、选择题1.高级语言编写的程序称()。

A.高级程序B.源程序C.目标程序D.BASIC程序2. 一个C程序的执行是从()。

A.本程序的main函数开始,到main函数结束。

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序的main函数结束3. 以下叙述正确的是()。

A.在C程序中,main函数必须位于程序的最前面B. C程序的每行中只能写一条语句C. C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误4. 以下叙述不正确的是()。

A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面5.下列字符中属于键盘符号的是()。

A.\ B.\n C.\t D.\b6.下列不正确的转义字符是()。

A.\\ B. \’ C.074 D.\07.下面四组选项中,均是合法的转义字符的选项是()。

A.‘\’’‘\\’‘\n’B.‘\’‘\017’‘\”’C.‘\018’‘\f ’‘xab’D.‘\\0’‘\101’‘x1f’8.下面四组选项中,均是不正确的八进制数或十六进制数的选项是()。

A. 016 0x8f 018B. oabc 017 0xaC. 010 -0x11 0x16D. 0a12 7ff -1239.不是C语言提供的合法关键字是()。

A.switchB.cherC.caseD.default10.C语言提供的合法关键字是()。

A.nextB.stringC.do caseD.struct11.下面四组选项中,均是C语言关键字的选项是()。

A auto enum includeB switch typedef continueC signed union scanfD if struct type12.下列不正确的标识符是()。

C语言程序设计题库及答案

C语言程序设计题库及答案

第1次客观题作业一、单选题(共30题,每题3分)1 .下面表示正确的是__A___。

A.C语言中的逗号是一种运算符B.在C语言中,一行只能有一个语句C.C中的变量不区分大小写D.c中的关键字可以做为变量名2 .字符型常量在内存中存放的是__A____代码值。

A.ASCII B.二进制C.十进制D.八进制3 .以下不正确的C语言标识符是(C )。

A.AB1 B._ab3 C.4ab D.a2_b4 .以下运算符中优先级最低的运算符是_D____。

A.&& B.& C.|| D.=5 .在C语言中,要求运算数必须是整型的运算符是___A___。

A.% B./ C.< D.!6 . C语言程序的基本单位是__C_____。

A.程序行B.语句C.函数D.字符7 .将高级语言编写的程序翻译成目标程序的是___B____程序。

A.解释程序B.编译程序C.汇编程序D.源程序8 .以下选项中,与k=n++完全等价的表达式是__A___。

A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+19 .下列(A )不属于结构化程序设计的循环结构。

A.For B.While C.if-else D.do-while10 .以下叙述中错误的是__A___。

A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识11 .若有输入语句scanf( %d%d%d,&x,&y,&z);则不能使x值为5,y值为6,z值为7的输入是__A____。

A.5,6 ,7 B.5回车换行 6 7 C.5 6 7 D.5,6,712 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是( B )。

for (i=3;i>0;i--) for (j=0;j<=4;j++){...}A.12 B.15 C.16 D.2013 .下列选项中,合法的C语言关键字是_D___。

C语言程序设计习题集(学校题库)

C语言程序设计习题集(学校题库)

2010-2011 第一C语言程序设计一、填空题1. 每一个C程序都必须有一个____函数。

2. C程序是由____构成的。

3. TC集成开发环境中,用热键______查看运行结果。

4. 浮点数3*108写成C语言指数格式为_____(最简格式)。

5. TC控制字符'\r'表示____。

6. 字符串"abc\r\x41\x42\\"中有效字符个数是__。

7. 求表达式的值:123/10%10=___________ 。

8. 已知:a=3,b=4,c=5,求a=(b++)+c运算后a的值为:___________9. 用于从键盘读入一个字符但不回显的是__。

10. 执行语句if((x=4+3)==3)y=5;else y=10;后,结果:y=_______11. 执行语句if(!5)y=5;else y=10;后,结果:y=_____12. C语言是以( )为单位进行编译的。

第 1 页/共62 页13. 定义函数时在数据类型前面加static和extern分别表示定义____函数和____函数。

14. 内部函数的作用域只限于一个____。

15. 外部函数的作用域只限于一个____。

16. 有序线性表能进行二分查找的前提是该线性表必须是____ 存储的。

17. 对软件设计的最小单位(模块或程序单元)进行的测试通常称为____测试。

18. 实体完整性约束要求关系数据库中元组的____属性值不能为空。

19. 在关系A(S,SN,D)和关系B(D,CN,NM)中,A的主关键字是S,B的主关键字是D,则称____是关系A的外码。

20. 字符(char)型数据在微机内存中的存储形式是____21. 输入一个五位整数,将它反向输出。

例如输入12345,输出应为____。

22. C语言程序的基本单位是____ 。

23. C语言程序的三种基本结构是____。

24. C语言可执行程序的开始执行点是____ 。

(完整)C语言程序设计试题题库

(完整)C语言程序设计试题题库

第一章基础知识一.填空1.每个C程序都必须有且仅有一个________ 函数。

2。

C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。

3。

软件是程序,以及______、使用和维护所需要的所有文档。

4.国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。

5.程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。

6.C语言是由________组成的.7。

C语言的函数可分为主函数main、标准库函数和_________。

8.一个函数是由两部分组成的,即:________和函数体。

9。

编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。

10.程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作的要求。

不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________. 11。

机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。

12。

与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对象,也可以用标号和符号来代替地址、常量和变量。

13。

在编译程序之前,凡以____开头的代码行都先由预处理程序预处理.14. C程序的执行均是由执行_________开始。

15。

函数体即为包含在{ }内的部分.它分为________和为完成功能任务由若干个C语句组成的执行部分。

16.C语言程序中一条简单语句是以________字符作为结束符的。

17.C语言是结构化、________的程序设计语言.18.由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序",将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。

国家开放大学电大考试《C语言程序设计》题库及答案

国家开放大学电大考试《C语言程序设计》题库及答案

《C语言程序设计》期末综合练习题模拟试题一一、单选题1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。

A. mainB. MAINC. nameD. function2.每个C语言程序文件的编译错误分为(B)类。

A. 1B. 2C. 3D. 43.字符串"a+b=12\n"的长度为(B)。

A. 6B. 7C. 8D. 94.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为(D)语句。

A. forB. whileC. doD. if5.在下面的do-while循环语句中,其循环体语句被执行的次数为(C)。

int i=0; do i++; while(i<10);A. 8B. 9C. 10D. 116.将两个字符串连接起来组成一个字符串时,选用的字符串函数为(C)。

A. strlen( )B. strcpy( )C. strcat( )D. strcmp( )7.若用数组名作为函数调用的实参,传递给形参的是(A)。

A. 数组的首地址B. 数组中第一个元素的值C. 数组中全部元素的值D. 数组元素的个数8.假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大(C)个字节。

9.假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p 指向s所指向的字符串,则p应定义为(A)。

A. char *p=sB. char *p=&sC. char *p;p=*sD. char *p; p=&s10.从一个数据文件中读入以换行符结束的一行字符串的函数为(B)。

A. gets( )B. fgets( )C. getc( )D. fgetc( )二、填空题1.执行“printf("%c",'A'+2);”语句后得到的输出结果为(C)。

C语言程序设计题库

C语言程序设计题库

一、选择题(每题1分,共20分)1.C语言程序从main()函数开始执行,所以这个函数要写在( D )。

A.程序文件的开始 B.程序文件的最后C.它所调用的函数的前面 D.程序文件的任何位置2.下列方法中错误的是( D )。

A.主函数可以分为两个部分:主函数说明部分和主函数体。

B.主函数可以调用任何非主函数的其它函数。

C.任何非主函数可以调用其它任何非主函数。

D.程序可以从任何非主函数开始执行。

3.下列正确的标识符是( C )。

A.-a1 B.a[i] C.a2_i D.int t4.C语言中的简单数据类型包括( D )。

A.整型、实型、逻辑型 B.整型、实型、逻辑型、字符型C.整型、字符型、逻辑型 D.整型、实型、字符型5.下列可以正确表示字符型常量的是( A )。

A.’\t’ B.”a” C.”\n” D.2976.在C语言中,字符型数据所占的内存空间是( C )。

A.2个字节 B.4字节 C.1字节 D.由用户自定义7.若int类型数据占2个字节,则unsigned int类型数据的取值范围是( B )。

A.0~255 B.0~65535 C.-32768~32767 D.-256~2558.若有以下类型说明语句:char a;int b; float c; double d; 则表达式a*b+d-c的结果类型为( D )。

A.float B.char C.int D.double9.下列正确的预编译命令是( D )。

A.define PI 3.14159B.#define P(a,b)=strcpy(a,b)C.#define stdio.hD.#define PI 3.1415910.为表示逻辑表达式79<X<90,应使用的C语言表达式是( A )。

A.( X>79 )&&( X<90 ) B.( X>79 )!=( X<90 )C.79<X<90 D.(X>79 )||( X<90 )11.设有语句“int a=2,b=3,c=-2,d=2;”,则逻辑表达式“a>0&&b&&c<0&&d>0”的值是( A )。

C语言考试

C语言考试
A. (***a=25,b=14,c=19) B. (***a=26,b=13,c=19)
C. (###a=25,b=14,c=19) D. (###a=26,b=13,c=19)
答案:D
4、以下程序的输出结果是( )。
main()
{
int i=010,j=10,k=0x10;
printf("%d,%d,%d\n",i,j,k);}
{
char c1='6',c2='0';
printf("%c,%c,%d,%d\n",c1,c2,c1-c2,c1+c2);
}
A.因输出格式不合法,输出出错信息B.6,0,6,102
C.6,0,7,6 D.6,0,5,7
答案:B
7、设有如下定义:int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));输出结果是( )。
}
答案:D
6、在C语言中,多分支选择结构语句为
switch(c)
{case常量表达式1:语句1;
……
case常量表达式n-1:语句n-1;
default语句n;}
其中括号内表达式c的类型( )。
A.可以是任意类型B.只能为整型
C.可以是整型或字符型D.可以为整型或实型
答案:C
7、当a = 1, b = 3 , c = 5, d = 4时,执行完下面程序段后x的值为( )。
答案:正确
3、健壮的算法不会因为非法输入而出现莫名其妙的状态。()
答案:正确
第三章数据类型运算符与表达式
一、单项选择题
1、下列字符串是标识符的是( )。

(完整版)c语言程序设计编程题库

(完整版)c语言程序设计编程题库

(完整版)c语言程序设计编程题库C语言程序设计编程题库1. 题目一:计算两个数的和要求:编写一个C程序,要求用户输入两个整数,并计算它们的和。

```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个整数:\n");scanf("%d %d", &num1, &num2);int sum = num1 + num2;printf("两个数的和为:%d\n", sum);return 0;}```2. 题目二:判断一个数是否为素数要求:编写一个C程序,要求用户输入一个整数,并判断该数是否为素数。

#include <stdio.h>int main() {int num;printf("请输入一个整数:\n"); scanf("%d", &num);int isPrime = 1; // 假设为素数 for (int i = 2; i <= num / 2; i++) { if (num % i == 0) {isPrime = 0; // 不是素数break;}}if (isPrime == 1) {printf("%d是素数\n", num); } else {printf("%d不是素数\n", num); }return 0;```3. 题目三:求n的阶乘要求:编写一个C程序,要求用户输入一个正整数n,并计算n的阶乘。

```c#include <stdio.h>int main() {int num;unsigned long long factorial = 1;printf("请输入一个正整数:\n");scanf("%d", &num);for (int i = 1; i <= num; i++) {factorial *= i;}printf("%d的阶乘为:%llu\n", num, factorial);return 0;}```4. 题目四:字符串反转要求:编写一个C程序,要求用户输入一个字符串,并将其反转输出。

C语言程序设计题库(专科)

C语言程序设计题库(专科)

C语⾔程序设计题库(专科)C语⾔程序设计题库1、以下说法中正确的是()A.字符型变量可以存放字符串B.递归调⽤是指函数调⽤⾃⼰C.所有的外部函数只能在本⽂件中被调⽤D.在循环体中break语句和continue语句的作⽤都是结束循环正确:【B】2、若有定义:doubieq,p;则给能输⼊项读⼊数据的正确程序是()A.q=&pscanf("%1f",q);B.q=&pscanf("%1f", q);C.q=&pscanf("%1f",q);D.q=&pscanf("%1f",q);正确:【B】3、下⾯叙述正确的是()A.每⾏最多只能写两条语句B.程序中必需含有⾃定义函数C.main()函数必须位于源程序⽂件的开头D.所有语句都必须以分号";"结束正确:【D】4、数组元素下标的数据类型为()。

A.整型常量、字符型常量或整型表达式B.字符串常量C.实型常量或实型表达式D.任何类型的表达式正确:【A】5、若有定义:structteacher{intnum;charsex;intage;}teacher1;则下⾯叙述错误的是()。

A.struct是结构类型的关键字B.s tructteacher是⽤户定义的结构类型C.num、sex、age都是结构变量teacher1的成员D.teacher1是结构类型名正确:【D】6、在函数调⽤时,以下说法正确的是()A.函数调⽤后必须带回返回值B.实际参数和形式参数可以同名C.函数间的数据传递不可以使⽤全局变量D.主调函数和被调函数总是在同⼀个⽂件⾥正确:【B】7、sizeof(double)s是()A.函数调⽤B.int型表达式C.double型表达式D.⾮法表达式正确:【B】8、若有定义:charstrl[6]="ABCDE",psstr="FEDCBA";()是错误的。

A.strcpy(str2,str1)B.表达式stecmp(str1,str2)的值⼩于0C.str1=str2;D.表达式strlen(str1)的值为5;正确:【B】9、若有定义:intr,x=245;则语句r=x/100%9;运⾏后r的值为()。

《C语言程序设计》复习题库(1)

《C语言程序设计》复习题库(1)

复习题库
当n=5时
93.有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它
插入到数组中。

94.将一个数组中的值按逆序重新存放。

例如,原来顺序为8,6,5,4,1。

要求
改为1,4,5,6,8
95.编程先输入某班10个学生某门课的成绩(成绩均为float型数据),
对全班10个学生成绩进行由高到低排序,并打印输出排序结果。

96.从键盘任意输入某班10个学生的成绩,输出最高分并统计出不及格
人数。

97.写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的
信息
98.编写函数实现两个整型变量值的交换。

99.用递归调用的方法求n!,要求n由用户输入。

100.从键盘任意输入10个整数并放入一个数组,用函数编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组。

101.写一个函数,使给定的一个3X3的二维整形数组转置,即行列互换102.写一个函数,将两个字符串连接
103.写一个函数,使输入的一个字符串按反序存放。

104.输入两个实数,用一个函数求出它们之和。

105.有一个一维数组score,内放10个学生成绩,写一个函数求平均成绩。

106.输出所得水仙花数,所谓水仙花数是指一个数3位数,其各各位数字立方和等于其本身, 例如: 153 = 1*1*1 + 3*3*3 + 5*5*5。

C语言程序设计练习题库

C语言程序设计练习题库

C语言习题集1-4章练习题一.选择题1、以下叙述中正确的是()。

A、用C程序实现的算法必须要有输入和输出操作B、用C程序实现的算法可以没有输出但必须要有输入C、用C程序实现的算法可以没有输入但必须要有输出D、用C程序实现的算法可以既没有输入也没有输出2、以下叙述中错误的是()A、用户所定义的标识符允许使用关键字B、用户所定义的标识符应尽量做到“见名知意”C、用户所定义的标识符必须以字母或下划线开头D、用户定义的标识符中,大、小写字母代表不同标识3、以下不正确的C语言标识符是()A、intB、a_1_2C、ab1exeD、_x4、下面的注释那个写法是正确的()A、/*this is a comment*\B、/*this is a comment/* it is error*/C、/*this is a comment*/D、//this one seems like a comment doesn‟t it5、C语言提供的不正确的转义字符是()A、‟\\‟B、‟\‟‟C、‟074‟D、‟\0‟6、字符串常量"ab\\\c\ted\3\76"的长度是()A、9B、10C、16D、87、在定义变量时同时给a、b、c三个整型变量赋初值5的正确语句是()A、int a=b=c=5;B、int a, b, c = 5;C、int a =5 ;b = 5; c =5 ;D、int a =5, b = 5, c =5;8、在C语言中,要求参加运算的数必须时整数的运算符是()A、/B、*C、%D、=9、是C语言提供的合法的数据类型关键字()A、FloatB、signedC、intD、Char10、若int k=7,x=12;则能使值为3的表达式是()A、x%=(k%=5)B、x%=(k-k%5)C、x%=k-k%5D、(x%=k)-(k%=5)11、对于下述语句,若将10赋给变量k1和k3,将20赋给变量k2和k4,则应按()方式输入数据。

C语言程序设计题库及答案(word文档良心出品)

C语言程序设计题库及答案(word文档良心出品)

第1次客观题作业一、单选题(共30题,每题3分)1 .下面表示正确的是__A___。

A.C语言中的逗号是一种运算符B.在C语言中,一行只能有一个语句C.C中的变量不区分大小写D.c中的关键字可以做为变量名2 .字符型常量在内存中存放的是__A____代码值。

A.ASCII B.二进制C.十进制D.八进制3 .以下不正确的C语言标识符是(C )。

A.AB1 B._ab3 C.4ab D.a2_b4 .以下运算符中优先级最低的运算符是_D____。

A.&& B.& C.|| D.=5 .在C语言中,要求运算数必须是整型的运算符是___A___。

A.% B./ C.< D.!6 . C语言程序的基本单位是__C_____。

A.程序行B.语句C.函数D.字符7 .将高级语言编写的程序翻译成目标程序的是___B____程序。

A.解释程序B.编译程序C.汇编程序D.源程序8 .以下选项中,与k=n++完全等价的表达式是__A___。

A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+19 .下列(A )不属于结构化程序设计的循环结构。

A.For B.While C.if-else D.do-while10 .以下叙述中错误的是__A___。

A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识11 .若有输入语句scanf( %d%d%d,&x,&y,&z);则不能使x值为5,y值为6,z值为7的输入是__A____。

A.5,6 ,7 B.5回车换行 6 7 C.5 6 7 D.5,6,712 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是( B )。

for (i=3;i>0;i--) for (j=0;j<=4;j++){...}A.12 B.15 C.16 D.2013 .下列选项中,合法的C语言关键字是_D___。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言题库试题1.C 语言规定,函数返回值的类型是由()。

A.return 语句中的表达式类型所决定B.调用该函数时的主调函数类型所决定C.调用该函数时系统临时决定D.在定义该函数时所指定的函数类型所决定2.以下程序的输出结果是#include <stdio.h>f(int b[],int m,int n){ int i,s=0;for(i=m;i<n;i=i+2) s=s+b[i];return s;}void main(){int x,a[]={1,2,3,4,5,6,7,8,9};x=f(a,3,7);printf("%d\n",x);}A) 10 B) 18 C) 8 D) 153.有如下程序#include <stdio.h>int runc(int a,int b){ return(a+b);}void main(){ int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%\d\n”,r);}该程序的输出的结果是A) 12 B) 13 C) 14 D) 154.下列选项中,正确的赋值表达式为()A、a=b=c=9B、a=b+9=c-9C、a=b,a++,b=9D、a=9-b=c+95.设x为int型变量,下列选项中能够判定x值为偶数的表达式是()A、 x%2=0B、x/2=0C、x%2==0D、x/2==06.有以下程序段int m=0,n=0; char c='a';scanf("%d%c%d",﹠m,﹠c,﹠n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入:10A10"回车",则输出结果是:A) 10,A,10 B) 10,a,10 C) 10,a,0 D) 10,A,07设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是______。

A) printf("x=%d\n",x);B) printf("x=%ld\n",x);C) printf("x=%8dL\n",x);D) printf("x=%LD\n",x);8.以下程序的输出结果是main(){ char c='z';printf("%c",c-25);}A) a B) Z C) z-25 D) y9.对下面的程序,说法正确的是( )#include "stdio.h"void main(){int x=3,y=0,z=0;if(x=y+z)printf("* * * *\n");else printf("# # # #\n");}A) 有语法错误不能通过编译 B) 输出* * * *。

C) 可以通过编译,但是不能通过连接,因而不能运行。

D) 输出# # # #。

10若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是( ) A) swich(a+b); B) switch(a*a+b*b){case 1:y=a+b; break; {case 3:case 0:y=a-b; break; case 1:y=a+b;break;} case 3:y=b-a,break;}C)switch a D) switch(a-b){case c1 :y=a-b; break; {default:y=a*b;break;case c2: x=a*d; break; case 3:case 4:x=a+b;break; default:x=a+b; case 10:case 11:y=a-b;break;} }11当a=1,b=3,c=5,d=5时,执行下面一段程序后,x的值为A) 1 B) 2 C) 3 D) 6if(a〈b)if(c〈d) x=1;elseif(a〈c)if(b〈d) x=2;else x=3;else x=6;12若已定义x和y为double类型,则表达式x=1,y=x+3.0/2 的值是A. 1B. 2C. 2.0D. 2.513.若已知a=10,则表达式!a的值是___A. 0B. 10C. 1D. -10有如下程序main(){ int a=2,b=-1,c=2;if(a)if(0>b)c=0;else c++;printf("%d\n",c);}该程序的输出结果是A. 0B. 1C. 2D. 3以下程序段的输出结果是________int i,j,m=0;for (i=1;i<=5;i+=4)for (j=3;j<=19;j+=4)m++;printf(“%d\n”,m);A)10 B)15 C)20 D)25下面程序的运行结果是________。

#include <stdio.h>void main( ){int num=0;while(num<=2){num++;printf("%d\n",num);}}A)1 B)1 C)1 D)12 2 23 34以下说法中正确的是A C语言程序总是从第一个的函数开始执行B 在C语言程序中,要调用的函数必须在main()函数中定义C C语言程序总是从main()函数开始执行D C语言程序中的main()函数必须放在程序的开始部分_____是合法的用户自定义标识符。

A、 b-bB、floatC、2KD、 _isw下列可用于C语言用户标识符的一组是A. void, do, WORDB. a_b123, _123,CarC. For, -abc, ifD. 2a, DO, while以下数组定义中不正确的是A.int a[2][3];B.int b[][3]={0,1,2,3};C.int c[100][100]={0};D.int d[3][]={{1,2},{1,2,3},{1,2,3,4}};在C语言中,一维数组的定义方法为类型说明符数组名A.[常量表达式]B.[整型常量]C.[整型变量]D.[整型常量]或[整型表达式]有以下程序main(){char s[]="\n123\\";printf("%d,%d\n",strlen(s),sizeof(s));}执行后输出结果是A) 赋初值的字符串有错 B) 6,7 C) 5,6 D) 6,6下面程序以每行3个数据的形式输出a数组,请填空。

#define N 9main(){int a[N]={1,2,3,4,5,6,7,8,9},i;for(i=0;i<N;i++){if(_____________) printf("\n");printf("%3d",a[i]);}}下面程序段的执行结果是_________int y=7;for( ;y>0;y--){if(y%3==0){ printf("%d",--y);continue;}}分析如下程序,此程序运行时输出结果是:#include<stdio.h>void test(int *x,int *y);void main(){int a=10,b=20;test(&a,&b);printf("%d",a);}void test( int *x,int *y){int t;t=*x;*x=*y;*y=t;分析如下程序,此程序运行时输出结果是:#include<stdio.h>typedef struct{ int a;float b;char *c;}UN;void main(){static UN x={19,83.5,"zhang"};UN *px;px=&x;printf("%s",px->c);}设a为int型变量,则表达式(a=2*3,a*4),a+30的值为。

考生注意:先将源程序文件713.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:计算2个数的平方和(结果=第一个数的平方加上第二个数的平方)要求:1)2个数由键盘输入2)通过函数调用实现(计算方法在子函数中,通过主函数调用实现)3)将结果显示出来考生注意:先将源程序文件113.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:********************one dream one world!********************并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。

考生注意:先将源程序文件210.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:计算公式: [ 1 x=1y=[ x*x x<1[ x*x*x x>1要求: 1)从键盘输入x的值,根据x的值求y的值2)输出y的值并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。

考生注意:先将源程序文件507.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!要求:补充程序使得程序运行时完成以下功能:计算公式:求某班20个人的某门课的平均成绩以及不及格学生的人数。

要求: 1)从键盘输入20个学生成绩2)求平均成绩和不及格学生的人数3)输出平均成绩及不及格人数。

题号:1 分值:2 得分:0 答案:D 试卷:题号:2 分值:2 得分:0 答案:A试卷:题号:3 分值:2 得分:0 答案:D 试卷:题号:4 分值:2 得分:0 答案:A试卷:题号:5 分值:2 得分:0 答案:C 试卷:题号:6 分值:2 得分:0 答案:A试卷:题号:7 分值:2 得分:0 答案:B 试卷:题号:8 分值:2 得分:0 答案:A试卷:题号:9 分值:2 得分:0 答案:D 试卷:题号:10 分值:2 得分:0 答案:D 试卷:题号:11 分值:2 得分:0 答案:B 试卷:题号:12 分值:2 得分:0 答案:D 试卷:题号:13 分值:2 得分:0 答案:A试卷:题号:14 分值:2 得分:0 答案:A试卷:题号:15 分值:2 得分:0 答案:A试卷:题号:16 分值:2 得分:0 答案:B 试卷:题号:17 分值:2 得分:0 答案:C 试卷:题号:18 分值:2 得分:0 答案:D 试卷:题号:19 分值:2 得分:0 答案:B 试卷:题号:20 分值:2 得分:0 答案:D 试卷:题号:21 分值:2 得分:0 答案:A试卷:题号:22 分值:2 得分:0 答案:C 试卷:题号:23 分值:2 得分:0 答案:i%3==0试卷:题号:24 分值:2 得分:0 答案:52 试卷:题号:25 分值:2 得分:0 答案:20 试卷:题号:26 分值:2 得分:0 答案:zhang试卷:题号:27 分值:2 得分:0 答案:36 试卷:题号:28 分值:12 得分:(该题由评卷系统判分)题号:29 分值:10 得分:(该题由评卷系统判分)题号:30 分值:12 得分:(该题由评卷系统判分)题号:31 分值:12 得分:(该题由评卷系统判分)。

相关文档
最新文档