带答案C语言2-10章作业

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

C语言习题集

专业班级

学号

姓名

第2章运算符与表达式

一、选择题

1.若有定义:int a=2,b=3 ; float x=,y=; 则下面表达式的值为(C)。

(float)(a+b)/2+(int)x% (int)y

A) B)35 C) D)

2.若有定义:int x=3 ,y=2; float a= ,b=; 则下面表达式的值为( B )。

(x+y)%2+(int)a/(int)b

A) B)1 C) D)2

3.若x和n均是int 型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为( A )。x%=(n%=2)

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

4.设有 int x=11; 则表达式 (x++*1/3)的值是( A )。

A)3 B)4 C)11 D)12

5.下列程序的输出结果是( C )。

#include <>

main( )

{ double d=; int x,y;

x=; y=(x+/;

printf("%d\n", d*y);}

A)3 B)3.2 C)0 D)

6.下列程序执行后的输出结果是(小数点后只写一位)( A )。

#include <>

main( )

{ double d; float f; long l; int i;

i=f=l=d=20/3;

printf("%d %ld %f %f\n", i,l,f,d);

}

A)6 6 B)6 6

C)6 6 D)6 6

7.若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是( C )。

A)1 B)2 C) D)

8.若变量a,i已正确定义,且i已正确赋值,则合法的语句是( B )。

A)i=int(a) B)++i; C)a=a++=5; D)a=int(i);

9.若执行以下程序段后,c3的值为( A )。

int c1=1,c2=2,c3;

c3=c2*c1;

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

10.如下程序的运行结果是( D )。

#include <>

main( )

{ int y=3,x=3,z=1;

printf("%d %d\n",(++x,y++),z+2);

}

A)3 4 B)4 2 C)4 3 D)3 3

11.能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是( D )。

A)a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 && a<=0 D)a>=10||a<=0

12.设x,y,t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为( C )。

A)不定值B)4 C)3 D)1

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

#include <>

main( )

{ int a=3;

printf("%d\n",(a+=a-=a*a));

}

A)-6 B)12 C)0 D)-12

14.设 a,b,c,d,m,n均为 int型变量,且 a=5,b=6,c=7,d=8,m=2,n=2,则逻辑表达式 (m=a>b)&&(n=c>d)运算后,n的值为( C )。

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

15.在C语言中,如果下面的变量都是int类型,则输出的结果是( A )。

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

printf(“%d\n”,pad);

A)7 B)6 C)5 D)4

二、填空题

1.若a,b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后,a值为__6____,b值为__4____,c值为__2____。

2.若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为___-60___。

3.若a是int型变量,则执行表达式a=25/3%3后a的值为___2___。

4.若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为

__10____,n的值为___6___。

5.表达式8/4*(int)(int)*+)值的数据类型为__int型___。

6.若a是int型变量,则表达式(a=4*5,a*2),a+6的值为__26____。

7.若x和a均是int型变量,则执行表达式x=(a=4,6*2)后x的值为__12__,执行表达式(x=a=4,6*2)后x的值为__4___。

8.若有以下定义int m=5,y=2;,则执行表达式y+=y-=m*=y后y的值是__-16____。

9.已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为__语句本身是错误的_错误的赋值__。

10.若int w=1,x=2,y=3,z=4;则条件表达式w>xw:y

11.以下程序的输出结果是__10 9____。

#include <>

main( )

{ int x=10,y=10;

printf("%d %d\n",x--,--y);

}

12.表达式*(1/2)的值为。

第3章基本语句

一、选择题

1.下面程序的输出结果是( B )。

#include <>

main( )

{ int x=5,y=3;

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

}

A)0 B)1 C)3 D)不确定的值

2.若变量已正确定义,下面程序段的输出结果是( A )。

x=; printf("%f\n",(int)(x*1000+05)/(float)1000);

A) B)输出格式说明与输出项不匹配,输出无定值C) D)

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

#include <>

main( )

{ int a=4; float b=9;

printf("a=%%d,b=%%f\n",a,b);

}

A)a=4,b= B)a=%4,b=%9.000000 C)a=%%d,b=%%f D)a=%d,b=%f

4.下面语句:

printf("|%8.5f|\n",; 的输出结果是( C )。

A)|| B)|| C)|| D)||

5.( D )是不正确的C语言赋值语句。

A)x=1,y=2; B)x++; C)x=y=5; D)y=int(x);

相关文档
最新文档