C语言练习题及答案1Word文件下载.docx

上传人:b****5 文档编号:21260880 上传时间:2023-01-29 格式:DOCX 页数:54 大小:42.14KB
下载 相关 举报
C语言练习题及答案1Word文件下载.docx_第1页
第1页 / 共54页
C语言练习题及答案1Word文件下载.docx_第2页
第2页 / 共54页
C语言练习题及答案1Word文件下载.docx_第3页
第3页 / 共54页
C语言练习题及答案1Word文件下载.docx_第4页
第4页 / 共54页
C语言练习题及答案1Word文件下载.docx_第5页
第5页 / 共54页
点击查看更多>>
下载资源
资源描述

C语言练习题及答案1Word文件下载.docx

《C语言练习题及答案1Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言练习题及答案1Word文件下载.docx(54页珍藏版)》请在冰豆网上搜索。

C语言练习题及答案1Word文件下载.docx

%d\n"

y=x/y);

}

的输出是___C___。

A:

0B:

1C:

3D:

不确定的值

4、执行下面程序段后,c3中的值是_A____

intc1=1,c2=2,c3;

c3=c1/c2;

0B:

1/2C:

0.5D:

1

2.C语言表达式书写规则

1、以下变量x、y、z均为double类型且已正确赋值,不能正确表示数学式子x/(y*z)的C语言表达式是___A___。

x/y*zB:

x*(1/(y*z))C:

x/y*1/zD:

x/y/z

2、设有定义:

floata=2,b=4,h=3;

,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是___B___。

(a+b)*h/2B:

(1/2)*(a+b)*hC:

(a+b)*h*1/2D:

h/2*(a+b)

第二节变量

1.变量

1、下列关于C语言的关键字的叙述中错误的是(C)

A.关键字是C语言规定的具有特定意义的字符串,通常也称保留字。

B.用户定义的标识符不应与关键字相同。

C.ANSIC标准规定的关键字有64个。

D.ANSIC标准规定的关键字有32个。

2、下面关于C语言用户标识符的描述,正确的是(D)

A.不区分大小写B.用户标识符不能描述常量

C.类型名也是用户标识符D.用户标识符可以作为变量名

3、以下(D)是正确的变量名。

A.a.beeB.-p11C.intD.p_11

4、下面属于C语言标识符的是(D)

A.2abB.@fC.?

bD._a12

5、下列保留字中用于构成循环结构的是(B)

A.ifB.whileC.switchD.default

6、以下定义语句中正确的是(C)。

A.chara='

A'

b='

B'

;

B.floata=b=10.0;

C.inta=10,*b=&

a;

D.float*a,b=&

7、下面标识符中,不合法的用户标识符为(D)

A)PadB)a_10C)_12abD)int

8、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符_____C____。

A、必须为下划线B、可以是字母、数字和下划线中任一种字符

C、必须为字母或下划线D、必须为字母

9、请选出可用作C语言用户标识符的一组标识符____B__。

①void②a3_b3③For④2a

define_123_abcDO

WORDIFcasesizeof

①B:

②C:

③D:

9、以下选项中合法的用户标识符是___B___。

longB:

_2TestC:

3DmaxD:

A.dat

10、以下不能定义为用户标识符的是__D____。

scanfB:

VoidC:

_3com_D:

int

11、在C语言中,如果下面的变量都是int类型,则输出结果是__A____

sum=pad=5;

pad=sum++,pad++,++pad;

printf("

pad);

7B:

6bC:

5D:

4

2.常量和符号常量

1、以下(B)是错误的整型常量。

A.-0xcdfB.018C.0xeD.011

2、下列符号中用来表示C语言中的回车换行的是(B)

A.\” 

 

B.\n 

C.\b 

D.\\

3、以下(C)是正确的字符常量。

A."

c"

B.'

\\'

'

C.'

W'

D."

\32a"

4、下面不正确的字符串常量是(A)

A)'

abc'

B)"

12'

12"

C)"

0"

D)"

"

6、以下列出C语言常量中,错误的是__B____。

OxFFB:

1.2e0.5C:

2LD:

\72'

7、以下选项中,非法的字符常量是___C___。

\t'

\17'

C:

"

\n"

\xaa'

第三节数据类型

1.整型数据

1、以下选项中不属于C语言的类型的是__D____。

signedshortintB:

unsignedchar

singedlongD:

longshort

2、以下选项中可作为C语言合法整数的是___C___。

10110BB:

0386C:

0XffaD:

x2a2

2.实型数据

1、以下选项中属于C语言的数据类型是___C___。

复数型B:

逻辑型C:

双精度型D:

集合型

2、若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是___C___。

1B:

2C:

2.0D:

2.5

3、设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是___C___。

x=x*100+0.5/100.0;

B:

x=(x*100+0.5)/100.0

x=(int)(x*100+0.5)/100.0;

D:

x=(x/100+0.5)/100.0;

4、以下符合C语言语法的实型常量是__C____。

1.2E0.5B:

3.14159EC:

.5E-3D:

E15

3.字符型数据

1、判断char型变量ch是否为大写字母的正确表达式是____C_____。

A、‘A’<

=ch<

=‘Z’  B、‘A’<

=chandch<

=‘Z’ 

C、‘A’<

=ch&

ch<

=‘Z’ D、‘A’<

=ch||ch<

=‘Z’

2.设有语句chara='

则变量a(A) 。

A)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法

3.判断变量ch中的字符是否为数字字符,最简单的正确表达式是(D)。

A)ch>

=0&

ch<

=9B)’0’<

=’9’

C)ch>

=’0’||ch<

=’9’D)ch>

=’0’&

4、设有说明语句:

chara='

则变量a__A____。

包含1个字符B:

包含2个字符C:

包含3个字符D:

说明不合法

5、已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'

\101'

是___A___。

字符AB:

字符aC:

字符eD:

非法的常量

6、若有以下定义和语句:

charc1='

b'

c2='

e'

%d,%c\n"

c2-c1,c2-'

a'

+'

);

则输出结果是___B____

2,MB:

3,EC:

2,eD:

输出结果不确定

7、已知字符A的ASCII码为十进制的65,下面程序的输出是__A___

main()

{

charch1,ch2;

ch1='

5'

-'

3'

ch2='

6'

ch1,ch2);

}

67,DB:

B,CC:

C,DD:

不确定的值

8、若变量c为char类型,能正确判断出c为小写字母的表达式是D

<

=c<

='

z'

  B:

(c>

)||(c<

('

=C)and('

>

=c)D:

)&

(c<

4.类型转换

1、表达式‘f’+10的类型是____A_______。

A、intB、char  C、double   D、float

2、设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是___D___。

6.500000B:

6C:

5.500000D:

6.000000

第四节赋值语句

1、若有定义:

inta=2;

则正确的赋值表达式是(A)。

A.a-=(a*3)B.double(-a)C.a*3D.a*4=3

2、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是(C)

A)–3B)9C)–12D)6

3、请选出合法的C语言赋值语句__B____。

a=b=58B:

i++;

a=58,b=58D:

k=int(a+b);

4、若变量已正确定义并赋值,下面符合C语言的表达式是___B___。

a:

=b+1B:

a=b=c+2C:

int18.5%3D:

a=a+7=c+b

5、若变量a、i已正确定义,且i已正确赋值,合法的语句是__B____。

a==1B:

++i;

a=a++=5D:

a=int(i);

6、以下非法的赋值语句是__C____。

n=(i=2,++i);

j++;

++(i+1);

x=j>

0;

7、以下选项中非法的表达式是___D___。

0<

=x<

100B:

i=j==0C:

(char)(65+3)D:

x+1=x+1

8、若以下选项中的变量已正确定义,则正确的赋值语句是___C___。

x1=26.8%3;

1+2=x2;

x3=0x12;

x4=1+2=3;

第五节复杂表达式

1.自增、自减运算符

1、设x、y均为整型变量,且x=10,y=3,则以下语句的输出结果是printf(“%d,%d\n”,x--,--y);

(D)

A)10,3B)9,3C)9,2D)10,2

2、设i为整型变量,且值为100,则语句++i;

执行后i的值是____B_____。

A、100    B、101     C、102    D、语句错

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

#include<

stdio.h>

{

inti=010,j=10;

%d,%d\n"

++i,j--);

A)11,10B)9,10C)010,9D)10,9

4.下列程序的运行结果是( 

#define 

5

#define 

A+1

main()

{inta;

a=B;

printf(″%d\n″a--);

A.6 

B.5 

C.4 

D.出错

5、以下程序的输出结果是___A___。

#include<

inti=10,j=10;

++i,j--);

}

11,10B:

9,10C:

010,9D:

10,9

6、有如下程序

{inty=3,x=3,z=1;

%d%d\n"

(++x,y++),z+2);

运行该程序的输出结果是___D___。

34B:

42C:

43D:

33

7、设x,y均为int型变量,且x=10,y=3,则以下数据的输出结果是Dprintf("

x--,--y)。

10,3B:

9,3C:

9,2D:

10,2

8、下列关于单目运算符++、--的叙述中正确的是___D___。

它们的运算对象可以是任何变量和常量

它们的运算对象可以是char型变量和int型变量,但不能是float型变量

它们的运算对象可以是int型变量,但不能是double型变量和float型变量

D:

它们的运算对象可以是char型变量、int型变量和float型变量

9.main()

{intm=3,n=4,x;

x=-m++;

x=x+8/++n;

x);

程序运行后的输出结果是__D____。

3B:

5C:

-1D:

-2

10、有以下程序

{chara='

b;

%c,"

++a);

%c\n"

b=a++);

程序运行后的输出结果是___A___。

b,bB:

b,cC:

a,bD:

a,c

11、若有以下定义和语句:

inta=5

a++;

此处表达式a++的值是__B__

6C:

2.关系运算符与关系表达式

1、设有intx,y;

以下语句判断x和y是否相等,正确的说法是该语句(B)

if(x=y)printf("

xisequaltoy."

A.语法错B.不能判断x和y是否相等

C.编译出错D.能判断x和y是否相等

2、表达式:

10!

=9的值是___D___。

trueB:

非零值C:

0D:

3.逻辑运算符与逻辑表达式

1、能表示条件0≤x≤100的表达式是(D)

A)0<

=x<

=100B.x>

=0,x<

=100

C)0≤x≤100D)x>

x<

2、设有:

inta=1,b=2,c=3,d=4,m=2,n=2;

执行(m=a>

b)&

(n=c>

d)后n的值为(C)

A)0B)1C)2D)3

3、能正确表示a和b同时为正或同时为负的逻辑表达式是___D______。

  A、(a>

=0‖b>

=0)&

(a<

0‖b<

0)    B、(a>

b>

0&

b<

0)

  C、(a+b>

0)&

(a+b<

=0)       D、a*b>

4、设有定义inta=1,b=2,c=3;

则下面的值为1的表达式是___A_______。

   A、a&

7    B、a<

b&

!

c   C、a&

b    D、b〉=c

5、设a、b和c都是int型变量,且a=3、b=4、c=5,则下面的表达式中,值为0的表达式是___D___。

a<

=bC:

a||+c&

b-cD:

((a<

b)&

c||1)

6、设a=5、b=6、c=7、d=8、m=2、n=2,执行

(m=a>

(n=c>

d)

后n的值为___B___。

1B:

2C:

4

7、有如下程序段

inta=14,b=15,x;

charc='

x=(a&

b)&

(c<

执行该程序段后,x的值为___D___。

falseC:

8、设x、y、t均为int型变量,则执行语句:

x=y=3;

t=++x||++y;

后,y的值为____C__。

不定值B:

4C:

3D:

9.以下程序的输出结果是__A____。

{inta=4,b=5,c=0,d;

d=!

a&

b||!

c;

d)

1B:

0C:

非0的数D:

-1

{inta=1,b=2,m=0,n=0,k;

k=(n=b>

a)||(m=a<

b);

k,m);

程序运行后的输出结果是__C____。

0,0B:

0,1C:

1,0D:

1,1

11、有以下程序

{inti=1,j=1,k=2;

if((j++||k++)&

i++)

%d,%d,%d\n"

i,j,k);

执行后输出结果是C

1,1,2B:

2,2,1C:

2,2,2D:

2,2,3

12、以下程序的输出结果是A

d=!

d);

4.逗号运算符

1、若x,i,j,k都是int型变量,则执行下面表达式后x的值为____C____

x=(i=11,j=22,k=33)

A、11    B、22     C、33    D、66

2、若x和y都是int型变量,x=100、y=200,且有下面的程序片段

%d"

(x,y));

上面程序片段的输出结果是__A____。

200B:

100C:

100200D:

输入格式符不够,输出不确定的值

3、若执行以下程序段,其输出结果是__B____

inta=0,b=0,c=0;

c=(a-=a-5),(a=b,b+3);

%d,%d,%d\n"

a,b,c);

3,0,-10B:

0,0,5C:

-10,3,-10D:

3,0,3

第六节基本输入输出语句

2.格式化输入与输出函数

1、若有说明语句:

inta,b,c,*d=&

c;

,则能从键盘读入三个整数分别赋给变量a、b、c的语句是(A)

A.scanf("

%d%d%d"

&

a,&

b,d);

B.scanf("

b,&

d);

C.scanf("

a,b,d);

D.scanf("

a,b,*d);

2、调用scanf(“%d,%d”,&

时,正确的键盘输入是(A)

A)10,20B)a=10,b=20C)10:

20D)1020

3、下面的程序段

  inti=6;

  printf(“***%-4d***\n”,i);

  的输出是______B______。

 A、***6***   B、***6***   

C、***0006***   D、出错

4.已知在ASCII代码中,字母A的序号为65,以下程序的输出的结果是(D)。

c2='

Y'

c1,c2);

A)因输出格式不合法,输出错误信息B)65,90C)A,YD)65,89

5、以下程序的输出结果是__D____。

main()

{intk=17;

%d,%o,%x\n"

k,k,k);

17,021,0x11B:

17,17,17C:

17,0x11,021D:

17,21,11

6、若变量已正确说明为float类型,要通过语句scanf("

%f%f%f"

c);

给a赋予10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:

___B___。

10

22

33

10.0,22.0,33.0

10.0

22.033.0

1022

7、X、Y、Z被定义为int型变量,若从键盘给X、Y、Z输入数据,正确的输入语句是___B___。

INPUTX,Y,Z;

B:

scanf("

X,&

Y,&

Z);

X,Y,Z);

D:

read("

8、已知i、j、k为int型变量,若从键盘输入:

1,2,3↙,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是__C____。

%2d%2d%2d"

i,&

j,&

k);

B:

%d%d%d"

%d,%d,%d"

i=%d,j=%d,k=%d"

9、设有定义:

longx=-123456L;

,则以下能够正确输出变量x值的语句是___B___。

x=%d\n"

x=%ld\n"

x=%8dL\n"

x=%LD\n"

10、有以下程序段

intm=0,n=0;

charc='

scanf("

%d%c%d"

m,&

c,&

n);

%d,%c,%d\n

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

当前位置:首页 > 教学研究 > 教学案例设计

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

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