C语言基础练习题Word格式文档下载.docx

上传人:b****6 文档编号:20683529 上传时间:2023-01-25 格式:DOCX 页数:59 大小:87.21KB
下载 相关 举报
C语言基础练习题Word格式文档下载.docx_第1页
第1页 / 共59页
C语言基础练习题Word格式文档下载.docx_第2页
第2页 / 共59页
C语言基础练习题Word格式文档下载.docx_第3页
第3页 / 共59页
C语言基础练习题Word格式文档下载.docx_第4页
第4页 / 共59页
C语言基础练习题Word格式文档下载.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

C语言基础练习题Word格式文档下载.docx

《C语言基础练习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言基础练习题Word格式文档下载.docx(59页珍藏版)》请在冰豆网上搜索。

C语言基础练习题Word格式文档下载.docx

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

13.C编译程序是()。

A.C程序的机器语言版本

B.一组机器语言指令

C.将C源程序编译成目标程序

D.由制造厂家提供的一套应用软件

14.以下选项中,合法的用户标识符是()。

A.longB._2abcC.3dmaxD.A.dat

15.以下选项中,合法的实型常数是()。

A.5E2.0B.E-3C.2E0D.1.3E

16.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量’\101’是()。

A.字符AB.字符aC.字符cD.非法的常量

17.以下选项中,合法转义字符的选项是()。

A.’\\’B.’\018’C.’xab’D.’\abc’

18.以下选项中,正确的字符常量是()。

A.”F”B.’\\’’C.’W’D.’’

19.以下选项中可作为C语言合法整数的是

A.10110BB.0386C.0XffaD.x2a2

20.下列变量定义中合法的是

A.short_a=1-.le-1;

B.doubleb=1+5e2.5;

C.longdo=0xfdaL;

D.float2_and=1-e-3;

21.与数学式子

对应的C语言表达式是()。

A.9*x^n/(2*x-1)B.9*x**n/(2*x-1)

C.9*pow(x,n)*(1/(2*x-1))D.9*pow(n,x)/(2*x-1)

22.若有代数式

,则不正确的C语言表达式是()。

A.a/c/d*b*3B.3*a*b/c/d

C.3*a*b/c*dD.a*b/d/c*3

23.已知各变量的类型说明如下:

intm=8,n,a,b;

unsignedlongw=10;

doublex=3.14,y=0.12;

则以下符合C语言语法的表达式是()。

A.a+=a-=(b=2)*(a=8)B.n=n*3=18

C.x%3D.y=float(m)

24.以下符合C语言语法的赋值表达式是()。

A.a=9+b+c=d+9B.a=(9+b,c=d+9)

C.a=9+b,b++,c+9D.a=9+b++=c+9

25.已知字母A的ASCII码为十进制数65,且S为字符型,则执行语句S=’A’+’6’-’3’;

后,S中的值为()。

A.’D’B.68C.不确定的值D.’C’

26.在C语言中,要求运算数必须是整型的运算符是()。

A./B.++C.*=D.%

27.若有说明语句:

chars=’\72’;

则变量s()。

A.包含一个字符

B.包含两个字符

C.包含三个字符

D.说明不合法,s的值不确定

28.若有定义:

intm=7;

floatx=2.5,y=4.7;

则表达式x+m%3*(int)(x+y)%2/4的值是()。

A.2.500000B.2.750000C.3.500000D.0.000000

29.在C语言中,char型数据在内存中的存储形式是()。

A.补码B.反码C.原码D.ASCII码

30.设变量x为float类型,m为int类型,则以下能实现将x中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是()。

A.x=(x*100+0.5)/100.0

B.m=x*100+0.5,x=m/100.0

C.x=x*100+0.5/100.0

D.x=(x/100+0.5)*100.0

31.表达式13/3*sqrt(16.0)/8的数据类型是()。

A.intB.floatC.doubleD.不确定

32.设以下变量均为int类型,则值不等于7的表达式是()。

A.(m=n=6,m+n,m+1)

B.(m=n=6,m+n,n+1)

C.(m=6,m+1,n=6,m+n)

D.(m=6,m+1,n=m,n+1)

33.假设所有变量均为整型,则表达式(x=2,y=5,y++,x+y)的值是()。

A.7B.8C.6D.2

34.已知s是字符型变量,下面不正确的赋值语句是()。

A.s=’\012’;

B.s=’u+v’;

C.s=’1’+’2’;

D.s=1+2;

35.已知s是字符型变量,下面正确的赋值语句是()。

A.s=’abc’;

B.s=’\08’;

C.s=’\xde’;

D.s=”\”;

36.若有以下定义,则正确的赋值语句是()。

intx,y;

floatz;

A.x=1,y=2,B.x=y=100

C.x++;

D.x=int(z);

37.设x、y均为float型变量,则不正确的赋值语句是()。

A.++x;

B.x*=y-2;

C.y=(x%3)/10;

D.x=y=0;

38.下列语句中符合C语言的赋值语句是()。

A.a=7+b+c=a+7;

B.a=7+b++=a+7;

C.a=7+b,b++,a+7D.a=7+b,c=a+7;

39.putchar函数可以向终端输出一个()。

A.整型变量表达式值。

B.字符串

C.实型变量值。

D.字符或字符型变量值。

40.以下程序段的输出结果是()。

inta=12345;

printf(”%2d\n”,a);

A.12B.34C.12345D.提示出错、无结果

41.若x和y均定义为int型,z定义为double型,以下不合法的scanf()函数调用语句为()。

A.scanf(”%d%lx,%le”,&

x,&

y,&

z);

B.scanf(”%2d*%d%lf”,&

x,&

y,&

C.scanf(”%x%*d%o”,&

y);

D。

scanf(”%x%o%6.2f”,&

42.有如下程序段:

intx1,x2;

chary1,y2;

scanf(”%d%c%d%c”,&

x1,&

y1,&

x2,&

y2);

若要求x1、x2、y1、y2的值分别为10、20、A、B,正确的数据输入是()。

(注:

└┘代表空格)

A.10A└┘20BB.10└┘A20B

C.10└┘A└┘20└┘BD.10A20└┘B

43.若变量已正确说明为float类型,要通过语句scanf(”%f%f%f”,&

a,&

b,&

c);

给a赋予10.0,b赋予22.0,c赋予33.0,不正确的输入形式为()。

A.10<

回车>

B.10.0,22.0,33.0<

22<

33

C.10.0<

D.1022<

22.033.0<

33<

44.有如下程序,若要求x1、x2、y1、y2的值分别为10、20、A、B,正确的数据输入是()。

intx1,x2;

scanf(”%d%d”,&

x2);

scanf(”%c%c”,&

A.1020ABB.10└┘20└┘ABC

C.10└┘20D.10└┘20AB

AB

45.已有定义inta=-2;

和输出语句:

printf(”%8lx”,a);

以下正确的叙述是()。

A.整型变量的输出格式符只有%d一种

B.%x是格式符的一种,它可以适用于任何一种类型的数据

C.%x是格式符

D.%8lx不是错误的格式符,其中数字8规定了输出字段的宽度

46.有如下程序段,对应正确的数据输入是()。

floatx,y;

scanf(”%f%f”,&

printf(”a=%f,b=%f”,x,y);

A.2.04<

B.2.04,5.67<

5.67<

C.A=2.04,B=5.67<

D.2.055.67<

47.有如下程序段,从键盘输入数据的正确形式应是()。

floatx,y,z;

scanf(“x=%d,y=%d,z=%d”,&

a,&

A.123B.x=1,y=2,z=3

C.1,2,3D.x=1└┘y=2└┘z=3

48.以下说法正确的是()。

A.输入项可以为一个实型常量,如scanf(”%f”,3.5);

B.只有格式控制,没有输入项,也能进行正确输入,如scanf(”a=%d,b=5d”);

C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(”%4.2f”,&

f);

D.当输入数据时,必须指明变量的地址,如scanf(”%f”,&

49.根据定义和数据的输入方式,输入语句的正确形式为:

()。

已有定义:

数据的输入方式:

1.23<

4.5<

A.scan(”%f,%f”,&

B.scanf(”%f%f”,&

C.scanf(”%3.2f└┘%2.1f”,&

D.scanf(”%3.2f%2.1f”,&

50.根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为()。

#include”stdio.h”

main()

{chars1,s2,s3;

输入语句;

printf(”%c%c%c”,s1,s2,s3);

}

输入形式:

A└┘B└┘C<

(注:

输出形式:

A└┘B

A.scanf(”%c%c%c”,&

s1,&

s2,&

s3);

B.scanf(”%c└┘%└┘c%c”,&

s1,&

C.scanf(”%c,%c,%c”,&

D.scanf(”%c%c”,&

51.以下程序的执行结果是:

{intx=2,y=3;

printf(”x=%%d,y=%%d\n”,x,y);

A.x=%2,y=%3B.x=%%d,y=%%d

C.x=2,y=3D.x=%d,y=%d

52.以下程序的输出结果是()。

{printf(”\nstring1=%15s*”,”programming”);

printf(”\nstring2=%-5s*”,”boy”);

printf(”string3=%2s*”,”girl”);

A.string1=programming└┘└┘└┘└┘*B.string1=└┘└┘└┘└┘programming*

string2=boy*string2=boy└┘└┘*string3=gi*

string3=gi*

C.string1=programming└┘└┘└┘└┘*D.string1=└┘└┘└┘└┘programming*

string2=└┘└┘boy*string3=girl*string2=boy└┘└┘*string3=girl*

53.根据题目中已给出的数据的输入和输出形式,程序中输入输出语句的正确内容是()。

{inta;

floatb;

输入语句

输出语句

1└┘2.3<

a+b=3.300

A.scanf(”%d%f”,&

b);

B.scanf(”%d%3.1f”,&

printf(”\na+b=%5.3f”,a+b);

printf(”\na+b=%f”,a+b);

C.scanf(”%d,%f”,&

D.scanf(”%d%f”,&

printf(”\na+b=%5.3f”,a+b)printf(”\na+b=%f”,a+b);

54.阅读以下程序,当输入数据的形式为:

12,34,正确的输出结果为()。

{inta,b;

scanf(”%d%d”,&

printf(”a+b=%d\n”,a+b);

A.a+b=46B.有语法错误

C.a+b=12D.不确定值

55.若有定义:

chars1,s2,s3;

并有以下输出数据:

1└┘2<

U└┘V└┘W<

则能给x赋给整数1,给y赋给整数2,给s1赋给字符U,给s2赋给字符V,给s3赋给字符W的正确程序段是()。

A.scanf(”x=%dy=%d”,&

s1=getchar();

s2=getchar();

s3=getchar();

B.scanf(”%d%d”,&

C.scanf(”%d%d%c%c%c”,&

D.scanf(”%d%d%c%c%c%c%c%c”,&

s3,&

1.2填空题

1.C语言的符号集包括________、________、________。

2.结构化设计中的三种基本结构是________、_______、________。

3.C语言源程序文件的后缀是________,经过编译后生成文件的后缀是________,经过链接后生成文件的后缀是________。

4.C语言的关键字都用________{大写或小写}。

5.一个函数由两部分组成,它们是_______、_______。

6.函数体一般包括_______、_______。

7.C语言是通过_______来进行输入和输出的。

8.以下程序的执行结果________。

#include”stdio.h”

main()

{shorti=-1,j=1;

printf(”dec:

%d,oct:

%o,hex:

%x,unsigned:

%u\n”,i,i,i,i);

%u\n”,j,j,j,j);

9.以下程序的执行结果是________。

{chars=’b’;

%x,ASCII:

%c\n”,s,s,s,s);

10.以下程序的执行结果是________。

{floatpi=3.1415927;

printf(”%f,%.4f,%4.3f,%10.3f”,pi,pi,pi,pi);

printf(”\n%e,%.4e,%4.3e,%10.3e”,pi,pi,pi,pi);

11.以下程序的执行结果是:

________。

{charc=’c’+5;

printf(”c=%c\n”,c);

12.以下程序输入1└┘2└┘3后的执行结果是________。

{inti,j;

chark;

scanf(”%d%c%d”,&

i,&

k,&

j);

printf(”i=%d,k=%c,j=%d\n”,i,k,j);

13.有以下程序,若输入9876543210后的执行结果是________;

若输入为:

98└┘76└┘543210后的执行结果是________;

987654└┘3210后的执行结果为:

{intx1,x2;

chary1,y2;

scanf(”%2d%3d%3c%c”,&

printf(”x1=%d,x2=%d,y1=%c,y2=%c\n”,x,y);

14.若x和y均为int型变量,则以下语句的功能是________。

x+=y;

y=x-y;

x-=y;

15.有一输入函数scanf(”%d”,k);

则不能使float类型变量k得到正确数值的原因是:

16.有如下程序段,输入数据:

12345ffl678后,u的值是【1】,v的值是【2】。

intu;

floatv;

scanf(“%3d%f”,&

u,&

v);

1.3答案及部分解析

一.选择题答案

1.B2.B3.A4.B5.B6.D

7.B8.D9.B10.C11.A12.C

13.C14.B15.C16.A17.A18.C

19.C20.A21.C22.C23.A24.B

25.A26.D27.A28.A29.D30.B

31.C32.C33.B34.B35.C36.C

37.C38.D39.D40.C41.D42.A

43.B44.D45.D46.A47.B48.D

49.B50.A51.D52.D53.A54.D

55.D

14.解析:

C语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。

而且不能与C语言规定的关键字同名。

关键字如:

auto,break,case,char,const,continue,default,do,double,else,entry,extern,for,float,goto,if,int,int,long,register,return,short,signed,sizeof,static,struct,unsigned,while,switch,typedef,void,volatile,unior。

这些关键字先不必硬背下来,随着后续的学习,你将发现它们都是一些数据的类型、语句等,自然会随着学习的深入,而记下来。

15.解析:

用指数形式表示一个实型常数时,E或e之前必须有数字,且E后面指数必须为整数。

16.解析:

’\101’为转义字符,相对应一个ASCII码字符。

(101)8=(65)10=A.

17.解析:

转义字符的特征是以“\”开头,其后跟一些字符,如\n,\t,\’,\\,\},\”,\b,\f等代表一些特殊的含义,而\后如跟数字,可以为八进制或者十六进制,将其转换为对应的ASCII码值,就可以得出对应的字符。

“\”后跟八进制的写法:

\0nn,或者\nn,表示“\0”或者“\”后只能跟1或3位0——7之间的数字;

“\”后跟十六进制的写法:

\xnn,或者\nn,表示“\x”或者“\”后只能跟1或2位0——9及a——f(A——F)之间的字符。

选项B的错误在于8不是八进制;

而选项C的错误在于没有“\”;

选项D的错误在于超长(多了一位)。

21.解析:

B的错误在于赋值语句的左侧只能为一个简单变量,如:

n=3*(n=18);

C的错误在于%运算符只能适用于整型数据,D的错误在于作类型转换时,应将类型加上括号,即为:

y=(float)m

31.解析:

逗号表达式的最终结果为最右端的表达式(即x+y)的值,其运算顺序是从左自右的。

第三个表达式y++,其隐含有两步操作:

先取y的原值,再执行y=y+1运算;

而本题中,虽然没有将y赋给某个变量(取其原值),但还是一定会执行加运算的。

因而,经过第三个表达式,y已经自加为6,故x+y的值为8,相对应得表达式最终结果为8。

若本题改为:

(x=2,y=5,z=y++,x+z),则其结果应为7。

二.填空题答案

1.答案:

英文字母、数字、一些有特定含义的标点符号

2.答案:

顺序结构、选择结构、循环结构

3.答案:

C,OBJ,EXE

4.答案:

小写

5.答案:

函数说明部分和函数体

6.答案:

变量定义部分和执行部分

7.答案:

输入和输出函数

8.答案:

dec:

-1,oct:

177777,hex:

ffff,unsig

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1