c语言基础知识复习题Word文档格式.doc

上传人:wj 文档编号:1235607 上传时间:2023-04-30 格式:DOC 页数:32 大小:111KB
下载 相关 举报
c语言基础知识复习题Word文档格式.doc_第1页
第1页 / 共32页
c语言基础知识复习题Word文档格式.doc_第2页
第2页 / 共32页
c语言基础知识复习题Word文档格式.doc_第3页
第3页 / 共32页
c语言基础知识复习题Word文档格式.doc_第4页
第4页 / 共32页
c语言基础知识复习题Word文档格式.doc_第5页
第5页 / 共32页
c语言基础知识复习题Word文档格式.doc_第6页
第6页 / 共32页
c语言基础知识复习题Word文档格式.doc_第7页
第7页 / 共32页
c语言基础知识复习题Word文档格式.doc_第8页
第8页 / 共32页
c语言基础知识复习题Word文档格式.doc_第9页
第9页 / 共32页
c语言基础知识复习题Word文档格式.doc_第10页
第10页 / 共32页
c语言基础知识复习题Word文档格式.doc_第11页
第11页 / 共32页
c语言基础知识复习题Word文档格式.doc_第12页
第12页 / 共32页
c语言基础知识复习题Word文档格式.doc_第13页
第13页 / 共32页
c语言基础知识复习题Word文档格式.doc_第14页
第14页 / 共32页
c语言基础知识复习题Word文档格式.doc_第15页
第15页 / 共32页
c语言基础知识复习题Word文档格式.doc_第16页
第16页 / 共32页
c语言基础知识复习题Word文档格式.doc_第17页
第17页 / 共32页
c语言基础知识复习题Word文档格式.doc_第18页
第18页 / 共32页
c语言基础知识复习题Word文档格式.doc_第19页
第19页 / 共32页
c语言基础知识复习题Word文档格式.doc_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言基础知识复习题Word文档格式.doc

《c语言基础知识复习题Word文档格式.doc》由会员分享,可在线阅读,更多相关《c语言基础知识复习题Word文档格式.doc(32页珍藏版)》请在冰点文库上搜索。

c语言基础知识复习题Word文档格式.doc

第三章数据类型、运算符和表达式

1、以下选项中,不正确的C语言浮点型常量是(C)。

A.160. 

B.0.12 

C.2e4.2 

0.0

2、以下选项中,(D)是不正确的C语言字符型常量。

A.'

a'

B.'

\x41'

C.'

\101'

D."

a"

3、在C语言中,字符型数据在计算机内存中,以字符的(C)形式存储。

原码 

反码 

C.ASCII码 

D.BCD码

4、若x、i、j和k都是int型变量,则计算下面表达式后,x的值是(C 

x=(i=4,j=16,k=32)

A.4 

B.16 

C.32 

D.52

5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。

算术运算、赋值运算、关系运算 

算术运算、关系运算、赋值运算

关系运算、赋值运算、算术运算 

关系运算、算术运算、赋值运算

6、若有代数式,则不正确的C语言表达式是(C)。

A.a/b/c*e*3 

B.3*a*e/b/c 

C.3*a*e/b*c 

D.a*e/c/b*3

7、表达式!

x||a==b等效于( 

D)。

A.!

((x||a)==b) 

B.!

(x||y)==b 

C.!

(x||(a==b)) 

D.(!

x)||(a==b)

8、设整型变量m,n,a,b,c,d均为1,执行(m=a>

b)&

&

(n=c>

d)后,m,n的值是(A)。

A.0,0 

B.0,1 

C.1,0 

D.1,1

9、设有语句inta=3;

,则执行了语句a+=a-=a*=a;

后,变量a的值是(B)。

A.3 

B.0 

C.9 

D.-12

10、在以下一组运算符中,优先级最低的运算符是( 

A.* 

C.+ 

D.= 

11、设整型变量i值为2,表达式(++i)+(++i)+(++i)的结果是( 

B)。

A.6 

B.12 

C.15 

表达式出错

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

A.1 

B.2 

C.2.0 

D.2.5

13、sizeof(double)的结果值是( 

A.8 

B.4 

C.2 

出错

14、设a=1,b=2,c=3,d=4,则表达式:

a<

b?

a:

c<

d?

d的结果为(D)。

B.3 

D.1

15、设a为整型变量,不能正确表达数学关系:

10<

15的C语言表达式是(A)。

A.10<

15 

B.a==11||a==12||a==13||a==14

C.a>

10&

a<

D.!

(a<

=10)&

!

(a>

=15)

16、设f是实型变量,下列表达式中不是逗号表达式的是( 

A.f=3.2,1.0 

B.f>

0,f<

10 

C.f=2.0,f>

D.f=(3.2,1.0) 

17、表达式18/4*sqrt(4.0)/8值的数据类型是(C 

A.int 

B.float 

C.double 

D.不确定

18、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句

C2=’A’+’6’-‘3’;

后c2中的值是(A)。

A.D 

B.68 

C.不确定的值 

D.C

19、以下用户标识符中,合法的是(B)。

B.nit 

C.123 

D.a+b

20、C语言中,要求运算对象只能为整数的运算符是(A 

A.% 

B./ 

C.>

D.*

21、若有说明语句:

charc='

\72'

则变量c在内存占用的字节数是(A)。

C.3 

D.4

22、字符串"

ABC"

在内存占用的字节数是( 

C.6 

D.8

23、要为字符型变量a赋初值,下列语句中哪一个是正确的(B)。

A.chara="

3"

;

B.chara=’3’;

C.chara=%;

D.chara=*;

24、下列不正确的转义字符是(C)。

A.\\ 

B.\'

C.074 

D.\0

1、C语言中的逻辑值“真”是用 

表示的,逻辑值“假”是用 

表示的。

2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为 

3、设c='

w'

a=1,b=2,d=-5, 

则表达式'

x'

+1>

c,'

y'

!

=c+2,-a-5*b<

=d+1,b==a=2的值分别为 

、 

4、设floatx=2.5,y=4.7;

inta=7;

,表达式x+a%3*(int)(x+y)%2/4的值为 

2.5 

5、判断变量a、b的值均不为0的逻辑表达式为a!

=0&

b!

=0 

6、求解赋值表达式a=(b=10)%(c=6),表达式值、a、b、c的值依次为 

4,4,10,6 

7、求解逗号表达式x=a=3,6*a后,表达式值、x、a的值依次为18,3,3 

8、数学式a/(b*c)的C语言表达式 

a/b/c 

三、编程题:

1、设长方形的高为1.5,宽为2.3,编程求该长方形的周长和面积。

2、编写一个程序,将大写字母A转换为小写字母a。

1.

main()

{floatx=1.5,y=2.3;

printf(“areais%6.2f\n”,x*y);

}

2.

{charc=’A’;

printf(“%d”,c+32);

顺序结构答案

一、单项选择题

AADABCCBBD

二、程序改错题

1.正确的程序为

#include"

stdio.h"

main()

char 

c;

getchar(c);

putchar('

\007'

);

/*鸣笛*/

putchar();

2.正确的程序为

{inta,b,s,l;

scanf("

%d,%d"

&

a,&

b);

s=a*b;

l=2*(a+b);

printf("

l=%d,s=%d\n"

l,s);

三、写出程序运行结果

1.68

2.x=4

y=11

四、编程题

1.main()

{inta,b,c,sum;

floatave;

scanf(“%d%d%d”,&

b,&

c);

sum=a+b+c;

ave=sum/3.0;

printf(“sum=%d,ave=%.2f\n”,sum,ave);

五、选做题

1.voidmain()

floata,b,temp;

printf("

inputaandb:

"

);

a,&

temp=a;

a=b;

b=temp;

a=%d,b=%d\n"

a,b);

}

选择结构答案

1.B 

2.A 

3.D 

4.C 

5.D 

6.B 

7.C

二、填空题

1. 

4

2. 

0

3. 

VeryGood 

Good

VeryGood

Fail

Pass

三、阅读程序,写出运行结果

10,4,3;

-1

3

6

1

四、程序设计题

{inta,b,x,y;

scanf(“%d%d”,&

x=a*a+b*b;

if(x>

100)

{y=x/100;

printf(“%d”,y);

elseprintf(“%d”,a+b);

2.if结构

{floatt;

charc;

printf(“inputscore,maxas100:

\n”);

scanf(“%f”,&

t);

if(t>

=90)ch=’A’;

elseif(t>

=80)ch=’B’;

=70)ch=’C’;

=60)ch=’D’;

elsech=’E’;

printf(“Grade=%d\n”,ch);

switch结构

{floatt;

switch(t/10)

{case10:

case9:

ch=’A’;

break;

case8:

ch=’B’;

case7:

ch=’C’;

case6:

ch=’D’;

case5:

ch=’E’;

1.main()

{inta,b,c,t;

if(a<

b){t=a;

a=b;

b=t;

c){t=a;

a=c;

c=t;

if(b<

c){t=b;

b=c;

printf(“%d,%d,%d\n”,a,b,c);

2.switch((s>

0)&

(s<

=10))

{case1:

switch((s>

=3)&

=6)) 

{case1:

x=2;

break;

case0:

switch(s>

1)||(s>

8)) 

x=3;

x=1;

}break;

case0:

x=0;

循环结构答案

一、选择题

1.B 

3.A 

5.A 

7.A 

8.C9.D 

10.D

1.x1 

x1/2-2

2.ch=getchar() 

ch>

=’A’&

ch<

=’Z’

3.s=s+t*i 

t=-t

三、阅读下列程序,写出程序运行的输出结果

1.852

8921

5

4. 

SUM=2468

四、程序改错

1.main()

{inti=200,n=0;

/*n用来记录每行已打印数的个数*/

while(i<

=300)

{if(i%7==0)

{//break;

%5d"

i);

n=n+1;

if(n==5) 

/*满5个换行*/

{printf("

\n"

n=0;

}

i++;

}}

2).main()

{inti,s=0,t=1;

for(i=1;

i<

=7;

i++)

t=t*i;

s=s+t;

sum=%d\n"

s);

}

五、程序设计题

{intx,g,s,b;

for(x=100;

x<

1000;

x++)

{b=x/100;

s=x%100/10;

g=x%10;

if((g*g*g+s*s*s+b*b*b)==x)

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

2.main()

{inti,s=0,f=1;

for(i=2;

80;

i++)

{s=s+f*(i-1)/i;

f=-f;

printf(s=%f\n”,s);

六、选做题

{floats=0,m=2.0,n=1.0,p;

inti;

for(i=1;

=20;

{s=s+m/n;

p=m;

m=m+n;

n=p;

2.#include<

stdio.h>

main()

{inti,j,k,s=1;

for(j=1;

j<

=50;

j++)

{k=100-i*5-j*2;

if(k>

=0)

{printf(“%2d%2d%2d”,i,j,k);

s=s+1;

if(s%5==0) 

printf(“\n”);

第7章 

数组习题

A卷

1.单项选择题

(1)inta[4]={5,3,8,9};

其中a[3]的值为( 

D

A.5 

C.8 

D.9

(2)以下4个字符串函数中,( 

)所在的头文件与其他3个不同。

A

A.gets 

B.strcpy 

C.strlen 

D.strcmp

(3)以下4个数组定义中,( 

)是错误的。

D

A.inta[7];

B.#defineN5 

longb[N];

C.charc[5];

intn,d[n];

(4)对字符数组进行初始化,( 

)形式是错误。

B

A.charc1[]={'

1'

'

2'

3'

};

B.charc2[]=123;

C.charc3[]={'

\0'

D.charc4[]="

123"

(5)在数组中,数组名表示( 

A

A.数组第1个元素的首地址 

B.数组第2个元素的首地址

C.数组所有元素的首地址 

D.数组最后1个元素的首地址

(6)若有以下数组说明,则数值最小的和最大的元素下标分别是( 

inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};

A.1,12 

B.0,11 

C.1,11 

D.0,12

(7)若有以下说明,则数值为4的表达式是( 

charc=’a’,d,g;

A.a[g-c] 

B.a[4] 

C.a['

d'

-'

c'

D.a['

-c] 

(8)设有定义:

chars[12]="

string"

;

则printf("

%d\n"

strlen(s));

的输出是( 

B.7 

C.11 

D.12

(9)设有定义:

则printf("

%d\n"

sizeof(s));

(10)合法的数组定义是( 

A.chara[]="

string"

B.inta[5]={0,1,2,3,4,5};

C.chara="

D.chara[]={0,1,2,3,4,5}

(11)合法的数组定义是( 

A.inta[3][]={0,1,2,3,4,5};

B.inta[][3]={0,1,2,3,4};

C.inta[2][3]={0,1,2,3,4,5,6};

D.inta[2][3]={0,1,2,3,4,5,};

(12)下列语句中,正确的是( 

A.chara[3][]={'

abc'

B.chara[][3]={'

C.chara[3][]={'

"

1"

D.chara[][3]={"

(13)下列定义的字符数组中,输出printf("

%s\n"

str[2]);

的输出是( 

C

staticstr[3][20]={"

basic"

foxpro"

 

"

windows"

A.basic 

B.foxpro 

C.windows 

输出语句出错

(14)下列各语句定义了数组,其中哪一个是不正确的( 

A.chara[3][10]={"

China"

"

American"

Asia"

B.intx[2][2]={1,2,3,4};

C.floatx[2][]={1,2,4,6,8,10};

D.intm[][3]={1,2,3,4,5,6};

(15) 

数组定义为inta[3][2]={1,2,3,4,5,6},值为6的数组元素是( 

A.a[3][2] 

B.a[2][1] 

C.a[1][2] 

D.a[2][3]

(16)下面的程序中哪一行有错误( 

#include<

{

floatarray[5]={0.0};

//第A行

inti;

for(i=0;

5;

%f"

array[i]);

array[0]=array[0]+array[i];

//第B行

%f\n"

array[0]);

//第C行

A.第A行 

B.第B行 

C.第C行 

D.没有

(17)下面哪一项是不正确的字符串赋值或赋初值的方式( 

A.char*str;

str="

B.charstr[7]={'

s'

'

t'

r'

i'

n'

g'

C.charstr1[10];

str1="

D.charstr1[]="

str2[]="

12345678"

(18)若有以下说明和语句,则输出结果是哪一项( 

C

(strlen(s)为求字符串s的长度的函数)

chars[12]="

abook!

%d"

A.12 

B.8 

C.7 

D.11

(19)若有以下说明和语句,则输出结果是( 

B

charsp[]="

\t\v\\\0will\n"

strlen(sp));

A.14 

D.字符串中有非法字符

(20)若有以下说明和语句,则输出结果是( 

charstr[]="

\"

c:

\\abc.dat\"

%s"

str);

A.字符串中有非法字符 

B.\"

C."

\abc.dat"

\\abc.dat"

2.填空题

(1)C语言中,数组的各元素必须具有相同的 

,元素的

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2