《C语言程序设计》习题Word格式.docx

上传人:b****3 文档编号:7062183 上传时间:2023-05-07 格式:DOCX 页数:47 大小:34.13KB
下载 相关 举报
《C语言程序设计》习题Word格式.docx_第1页
第1页 / 共47页
《C语言程序设计》习题Word格式.docx_第2页
第2页 / 共47页
《C语言程序设计》习题Word格式.docx_第3页
第3页 / 共47页
《C语言程序设计》习题Word格式.docx_第4页
第4页 / 共47页
《C语言程序设计》习题Word格式.docx_第5页
第5页 / 共47页
《C语言程序设计》习题Word格式.docx_第6页
第6页 / 共47页
《C语言程序设计》习题Word格式.docx_第7页
第7页 / 共47页
《C语言程序设计》习题Word格式.docx_第8页
第8页 / 共47页
《C语言程序设计》习题Word格式.docx_第9页
第9页 / 共47页
《C语言程序设计》习题Word格式.docx_第10页
第10页 / 共47页
《C语言程序设计》习题Word格式.docx_第11页
第11页 / 共47页
《C语言程序设计》习题Word格式.docx_第12页
第12页 / 共47页
《C语言程序设计》习题Word格式.docx_第13页
第13页 / 共47页
《C语言程序设计》习题Word格式.docx_第14页
第14页 / 共47页
《C语言程序设计》习题Word格式.docx_第15页
第15页 / 共47页
《C语言程序设计》习题Word格式.docx_第16页
第16页 / 共47页
《C语言程序设计》习题Word格式.docx_第17页
第17页 / 共47页
《C语言程序设计》习题Word格式.docx_第18页
第18页 / 共47页
《C语言程序设计》习题Word格式.docx_第19页
第19页 / 共47页
《C语言程序设计》习题Word格式.docx_第20页
第20页 / 共47页
亲,该文档总共47页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《C语言程序设计》习题Word格式.docx

《《C语言程序设计》习题Word格式.docx》由会员分享,可在线阅读,更多相关《《C语言程序设计》习题Word格式.docx(47页珍藏版)》请在冰点文库上搜索。

《C语言程序设计》习题Word格式.docx

2.下列属于字符型常量的是()。

A)’AA’B)”B”C)‘\117’D)’\x93L’

3.以下()是正确变量名。

A)5fB)ifC)f.5D)_f5

4.char型变量存放的是()。

A)ASCⅡ码值B)字符本身C)十进制代码值D)十六进制代码值

5.C语言中最简单的数字类型包括()。

A)整型、实型、逻辑型B)整型、实型、字符型

C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型

6.下面叙述正确的是()。

A)强制类型转换运算的优先级高于算术运算

B)若a和b是整型变量,(a+b)++是合法的

C)”A”*’B’是合法的

D)”A”+”B”是合法的

7.不是C语言实型常量的是()。

A)55.0B)0.0C)55.5D)55e2.5

8.已知chara=’R’;

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

A)a=(a++)%4B)a+2=3C)ca+=256--D)a=‘\078’

9.以下选项中属于C语言数据类型的是()。

A)复数型B)逻辑型C)双精度型D)集合型

10.若已定义f,g为double类型,则表达式:

f=1,g=f+5/4的值是()。

A)2.0B)2.25C)2.1D)1.5D)1.5D)1.5D)1.5

11.设整形变量a为5,使b不为2的表达式是()。

A)b=(++a)/3B)b=6-(--a)C)b=a%2D)b=a/2

12.若t为double类型,表达式t=1,t*5,t的值为()。

A)1B)6.0C)2.0D)1.0

13.在C语言中,运算对象必须是整型数的运算符是()。

A)%B)\C)%和\D)**

14.字符串”abcd\tef\0g”的长度是()。

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

1.C的整数可以用十、八和()三种进位制表示。

2.字符串”ab\034\\\x79”的长度为()。

3.表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为()。

4.设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的结果类型为()。

5.若k为int型变量且赋值11。

请写出运算k++后表达式的值(  )。

6.表达式3.5+1/2的计算结果是()。

7.若A、b和c均是int型变量,则执行下面表达式后,c值为()。

c=(a=5)-(b=2)+a

8.条件”20<

x<

30或x<

-100”的C语言表达式是()。

9.C语言的基本数据类型有整型、实型和(  )。

10.若有定义:

charc=′\010′;

则变量c中包含的字符个数为()。

11.C语言中普通整型变量的类型声明符为()。

第3章

一、选择题

1.结构化程序设计不包括()。

A)最优化B)自顶而下,逐步细化C)模拟化设计D)结构化编码

2.下面叙述中,()不是结构化程序设计中的三种基本结构之一。

A)数据结构B)选择结构C)循环结构D)顺序结构

3.已知:

inta,b;

用语句scanf(“%d%d”,&

a,&

b);

输入a、b的值时,不能作为输入数据分隔符的是()。

A),B)空格C)回车D)[TAB]

4.已知:

inty;

执行语句y=5/2;

则变量y的结果是()。

A)2B)-2C)2.5D)2.0

5.已知:

执行语句y=5%-3;

A)2B)-2C)1D)-1

6.设inta=2,b=2;

则++a+b的结果是()。

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

7.getchar()函数的功能是从终端输入()。

A)一个整型量值B)一个实型变量值C)多个字符D)一个字符

8.putchar()函数的功能是向终端输出()。

A)多个字符B)一个字符C)一个实型变量值D)一个整型变量表达式

9.已有如下定义和输入语句

inta;

charc1,c2;

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

a,&

c1,&

c2);

若要求a、c1、c2的值分别为10、A和B,正确的数据输入是()。

A)10ABB)10,A,BC)10ABD)10AB

10.若有声明和语句:

inta=5,b=6;

b*=a+1;

则b的值为()。

A)5B)6C)31D)36

11.使用语句scanf(“a=%f,b=%d”,&

输入数据时,正确的数据输入是()。

A)a=2.2,b=3B)a=2.2b=3C)2.23D)2.2,3

12.下列程序的运行结果是()。

#include<

stdio.h>

voidmain()

{inta=2,c=5;

printf("

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

a,c);

}

A)a=%2,b=%5B)a=2,b=5C)a=d,b=dD)a=%d,b=%d

二、填空题

1.设有以下变量定义,并已赋确定的值,

charw;

intx;

floaty;

doublez;

则表达式w*x+z-y所求得的数据类型是()。

2.若有定义inty=7;

floatx=2.5,z=4.7;

则下面表达式的值为()。

x+(int)(y/3*(int)(x+z)/2)%4

3.若有声明和语句:

inta=25,b=60;

b=++a;

则b的值是()。

三、程序分析题(写出程序运行结果)

1.#include<

voidmain()

{inta,b,c;

a=-1;

b=-2;

c=++a-b++;

%d"

c);

}

2.#include<

{intx,y,z;

x=1;

y=3;

z=++x+(++y);

z);

}

第4章

1.若整型变量a,b,c,d中的值依次为1,4,3,2,则条件表达式a<

b?

a:

c<

d?

c:

d的值为()。

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

2.若a是数值类型,则逻辑表达式(a==1)||(a!

=1)的值是()。

A)1B)0C)2D)不知道a的值,不能确定

3.在C语言中,switch语句后一对圆括号中表达式的类型()。

A)可以是任何类型B)只能是int类型

C)可以是整型或字符型D)只能是整型或实型

4.下列运算符的优先级最高的是()。

A)关系运算符B)算术运算符C)赋值运算符D)逻辑运算符

5.下列运算符中优先级最低的运算符是()。

A)||B)!

=C)<

=D)+

6.设charc1=’a’,c2=’A’;

则表达式c1==c2+32?

c1:

(c1=c2+32)的值是()。

A)1B)0C)’a’D)’A’

7.设intx=1,y=1;

表达式(!

x||y--)的值是()。

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

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

A)a>

=10ora<

=0B)a>

=0|a<

=10

C)a>

=10&

&

a<

=0D)a>

=10||a<

=0

9.若希望当a的值为奇数时,表达式的值为真,a的值为偶数时,表达式的值为假,则不能满足要求的表达式是()。

A)a%2==1B)!

(a%2==0)C)!

(a%2)D)a%2

10.如果a=3,b=2,c=1,则下列表达式的值为0的是()。

A)a>

bB)(a>

b)==cC)b+c<

aD)c=a>

b

11.表示关系12<

=x<

=y的C语言表达式为()。

A)(12<

=x)&

(x<

=y)B)(12<

=y)

C)(12<

=x)|(x<

=y)D)(12<

=x)||(x<

=y)

12.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

A)缩排位置相同的ifB)在其之前未配对的if

C)在其之前未配对的最近的ifD)同一行上的if

13.若有定义inta=1,b=2,c=3,d=4,x=5,y=6则表达式(x=a>

b)&

(y=c>

b)的值为()。

A)0B)1C)5D)6二、填空题

1.C语言中逻辑值真用()表示。

2.C语言中逻辑值假用()表示。

3.在C语言中,当表达式值为0时表示逻辑值假,当表达式值为()时表示逻辑值真。

4.设x为int型变量,请写出一个关系表达式(),用以判断x同时为3和7的倍数时,关系表达式的值为真。

5.C语言中逻辑运算符优先级按由低到高分别是()。

三、程序分析题

1.以下程序的功能是

stdio.h>

{

charch;

scanf(“%c\n”,&

ch);

ch=(ch>

=’A’&

ch<

=’Z’)?

ch+32:

ch;

printf(“char=%c\n”,ch);

2.若inti=10;

则执行下列程序后,写出变量i的正确结果。

switch(i)

{

case9:

i+=1;

case10:

case11:

default:

3.有以下程序

{

inta=1,b=2,c=3,d=0;

if(a==1)

if(b!

=2)

if(c!

=3)d=1;

elsed=2;

elseif(c!

=3)d=3;

elsed=4;

elsed=5;

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

写出程序运行后的输出结果。

四、程序填空题

1.输入三角形的三条边a,b,c,求三角形的面积。

#include“math.h”

#include“stdio.h”

voidmain()

floata,b,c,d,t,s;

printf(“请输入三角形的三条边:

”);

scanf(“%f,%f,%f”,&

b,&

c);

if

(1)

printf(“%f%f%f不能构成三角形!

”,a,b,c);

else

t=(a+b+c)/2;

s=

(2)

printf(“a=%7.2f,b=%7.2f,c=%7.2f,area=%7.2f\n”,a,b,c,s);

五、程序设计题

1.请编程序,输入一个4位数字,要求输出这4个数字字符,每个数字间空一个空格。如输入1990,应输出1990。

第5章

1.有以下程序

#include<

{inty=10;

while(y--);

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

程序执行后的输出结果是()。

A)y=0B)y=-1C)y=1D)while构成无限循环

2.运行下面程序段的输出结果是()。

inti;

for(i=0;

i<

10;

i++);

printf(“%d”,i);

A)9B)10C)8D)11

3.设有程序段

intk=10;

while(k=0)k=k-1;

则下面的描述正确的是()。

A)while循环执行10次B)循环是无限循环

C)循环体语句一次也不执行D)循环体语句执行一次

4.关于break语句的描述正确的是()。

A)break语句只能用于循环体中

B)break语句可以一次跳到多个嵌套循环体之外

C)在循环结构中可以根据需要使用break语句

D)在循环结构中必须使用break语句

5.C语句中while和do-while循环的主要区别是()。

A)do-while的循环体至少无条件执行一次

B)while的循环控制条件比do-while的循环控制条件严格

C)do-while允许从外部转到循环体内

D)do-while的循环体不能是复合语句

6.对于整型变量x,与while(!

x)等价的是()。

A)while(x!

=0)B)while(x==0)C)while(x!

=1)D)while(~x)

7.下列do-while循环的循环次数为()。

已知:

inti=5;

do

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

i--;

}while(i!

=0);

A)0B)1C)5D)无限

8.要求以下程序的功能是计算:

s=1+1/2+1/3+……+1/10

{

intn;

floats;

s=1.0;

for(n=10;

n>

1;

n--)

s=s+1/n;

printf("

%6.4f\n"

s);

程序运行后输出结果错误,导致错误结果的程序行是()。

A)s=1.0;

B)for(n=10;

n--)C)s=s+1/n;

D)printf("

9.下面关于for循环的正确描述是()。

A)for循环是先执行循环体语句,后判断循环条件

B)若for循环的循环体中包含多条语句,多条语句必须用括号括起来

C)for循环只能用于循环次数已经确定的情况

D)在for循环中,不能用break语句跳出循环体

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

inti;

for(i=1;

6;

i++)

if(i%2){printf(“#”);

continue;

printf(“*”);

printf(“\n”);

A)#*#*#B)#####C)*****D)*#*#*

1.若for循环用以下形式表示

for(表达式1;

表达式2;

表达式3)循环体语句

则执行语句for(i=0;

3;

i++)printf(“*”);

时,表达式3执行()次。

2.设有如下程序段:

inti=0,sum=1;

do

{sum+=i++;

}while(i<

2);

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

上述程序的输出结果是()。

3.若intx=5;

while(x>

0)printf(“%d”,x--);

的循环执行次数为()。

1.#include<

intx=2;

while(x--);

printf(“%d”,x);

写出程序运行结果。

2.当执行下面的程序段后,i、j、k的值分别为()、()、()。

inta,b,c,d,i,j,k;

a=10;

b=c=d=5;

i=j=k=0;

for(;

a>

b;

++b)

i++;

while(a>

++c)

j++;

do

k++;

d++);

1.鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空

for(x=1;

=29;

x++)

y=30-x;

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

2.下面程序的功能是计算1-3+5-7+…-99+101的值,请填空。

{inti,t=1,s=0;

for(i=1;

=101;

i+=2)

{;

s=s+t;

;

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

3.爱因斯坦的阶梯问题。设有一阶梯,每步跨2阶,最后余1阶;

每步跨3阶,最后余2阶;

每步跨5阶,最后余4阶;

每步跨6阶,最后余5阶;

只有每步跨7阶时,正好到阶梯顶。问至少有多少阶梯。

inta=7;

while()

a+=();

printf("

Flightofstairs=%d\n"

a);

4.以下程序的功能是从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空。

{floatx,amax,amin;

scanf(“%f”,&

x);

amax=x;

amin=x;

while()

{if(x>

amax)amax=x;

if()amin=x;

printf(“\namax=%f\namin=%f\n”,amax,amin);

1.设m,n为正整数,且m<

n,求由m到n的自然数倒数之和。

2.请编写一个程序,求序列2/1+3/2+5/3+8/5……前20项之和

3.编写程序,打印出所有的对等数。对等数是指一个三位数,其各位数字的和与各位数字的积的积等于该数本身。例如:

144=(1+4+4)*(1*4*4)

第6章

1.已知chars[5],c;

intb;

则调用函数scanf的正确语句是()。

A)scanf(“%s%c”,s,c);

B)scanf(“%d%c”,&

b,c);

C)scanf(“%d%c”,b,&

D)scanf(“%s%c”,s,&

2.下列描述中不正确的是()。

A)字符型数组中可以存放字符串

B)可以对字符型数组进行整体输入、输出

C)可以对整型数组进行整体输入、输出

D)不能在赋值语句中通过赋值运算符=“对字符型数组进行整体赋值

3.在inta[5]={1,3,5};

中,数组元素a[1]的值是()。

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

4.若要定义一个具有5个元素的整型数组,以下错误的定义语句是()。

A)inta[5]={0}B)intb[]={0,0,0,0,0}C)intc[2+3]D)inti=5,d[i]

5.已知inta[10];

则对a数组元素的正确引用是()。

A)a[10]B)a[3.5]C)a(5)D)a[10-10]

6.以下能对一维数组a进行正确初始化的语句是()。

A)inta[5]=(0,0,0,0,0,)B)inta[5]=[0]

C)inta[5]={1,2,3,4,5,6,7}D)inta[]={0}

7.若有定义inta[3][4]={{1,2},{0},{1,2,3}};

则a[1][1]的值为()。

A)0B){1,2}C)1D)3

8.若有声明inta[5][4];

则对其数组元素的正确引用是()。

A)a[3+1][2]B)a(3)

(2)C)a[0,2]D)a[3][5]

9.在C语言中,引用数组元素时,其数组下标的数据类型允许是()。

A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式

10.若有inta[3][5]={{2,2},{2,6},{2,6,2}};

则数组a共有个元素()。

A)8B)5C)3D)15

11.设有如下程序段:

inta[3][3]={1,0,2,1,0,2,1,0,1},i,j,s=0;

for(i=0;

for(j=0;

j<

i;

j++)

s=s+a[i][j];

则执行该程序段后,s的值是()。

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

12.设有如下定义charstr[8]={“Fujian”};

则分

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

当前位置:首页 > 总结汇报 > 工作总结汇报

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

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