高级语言程序设答案.docx

上传人:b****5 文档编号:8239166 上传时间:2023-01-30 格式:DOCX 页数:20 大小:29.62KB
下载 相关 举报
高级语言程序设答案.docx_第1页
第1页 / 共20页
高级语言程序设答案.docx_第2页
第2页 / 共20页
高级语言程序设答案.docx_第3页
第3页 / 共20页
高级语言程序设答案.docx_第4页
第4页 / 共20页
高级语言程序设答案.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

高级语言程序设答案.docx

《高级语言程序设答案.docx》由会员分享,可在线阅读,更多相关《高级语言程序设答案.docx(20页珍藏版)》请在冰豆网上搜索。

高级语言程序设答案.docx

高级语言程序设答案

高级语言程序设计(C)复习题1

一、选择题

1、下列表达式的值为0的是(B)

A.3﹪5B.3/5C.3/5.0D.3<5

2、正确的C语言用户自定义标识符是(A)

A.printB.floatC.when?

D.random﹪2

3、设inta=3;则表达式a<1&&--a>1的运算结果和a的值分别是(C)

A.0和2B.1和2C.0和3D.1和3

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

A.ifB.whileC.switchD.default

5、设inti;floatf;doubled;longinte;,则表达式10+′a′+i*f-d/e结果的数据类型是(A)

A.doubleB.longC.intD.float

6、与语句if(a>b)if(c>d)x=1;elsex=2;等价的是(C)

A.if((a>b)&&(c>d))x=1;elsex=2;

B.if(a>b){if(c>d)x=1;}elsex=2;

C.if(a>b){if(c>d)x=1;elsex=2;}

D.if(a<=b)x=2;elseif(c>d)x=1;

7、设charx=′b′;则printf(″x=﹪c,y=﹪c\n″,x,98);的输出是(D)

A.x=b,y=98B.x=98,y=b

C.x=98,y=98D.x=b,y=b

10、设intx[]={1,2,3,4,5,6},*p;p=x;则值为4的表达式是(D)

A.p+=2,*(++p)B.p+=3,*p

C.p+=2,*(p++)D.p+=2,++(*p)

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

staticcharstr[]=“BeiJing”;

printf(“%d\n”,strlen(strcpy(str,“computer”)));

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

13、以下函数调用语句中函数Func的实参个数为___C_______。

Func((exp1,exp2),(exp3,exp4),exp5,exp6));

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

14、如果a=1,b=2,c=3,d=4,则条件表达式a>b?

a:

c>d?

c:

d的值为_____D_____。

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

二、填空题

1、初始化值是0.618的双精度变量a的语句为___doublea=0.618_。

2、表达式!

10==1的值是____________0_______。

3、20

4、表达式a=1,a+1,a++的值是______1____________。

6、被调函数在执行结束时,这个函数中定义的____Static(静态)变量不被释放。

7、设charstring[]=″This_is_two_books!

″;则数组的长度应是_______19______。

8、设inta[2][3]={{2},{3}};则数组元素____a[0][0]_________的值为2。

10、设intmax;a=6,b=9;max=(a>b)?

a:

b;执行完后max的值是____9____

二、程序阅读理解题

1、写出程序执行后的输出结果:

________11,15______________

inta=3,b=15;

voidfun(intx1,intx2)

{

printf(″﹪d,﹪d\n″,x1+x2,b);

}

voidmain()

{

inta=9,b=2;fun(a,b);

}

3、下面程序运行后,如果从键盘上输入Car↙,则输出结果是___Ect_____

#include

voidmain()

{

charc;

while((c=getchar())!

='\n')

{

if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))

c=c+2;

printf("%c\n",c);

}

}

4、写出程序执行后的输出结果:

______1536998_____________。

main()

{

inti,a[3][3]={11,2,15,4,369,6,98,8,9};

for(i=0;i<3;i++)

printf(“%d”,a[i][2-i]);

}

5、以下程序运行后,如果从键盘上输人3,9↙,则输出结果是_1,9__。

(运算符优先顺序从低到高为:

=<=)

main()

{

intx;

scanf(“%d,%d”,&x,&y);

if((x=y<=10)||(y=x>=10))

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

else

printf(“%d,%d”,x++,y++);

}

四、编程

1、输出1000之内的所有完数

2、用选择法、冒泡法对10个整数排序。

3、写一个判断素数的函数,在主函数输入一个整数,输出是否素数的信息。

4、编程输出输出所有的“水仙花数”,

输出格式要求:

每个水仙花数输出宽度为5,每输出2个水仙花数换行。

5、输出Fibnaci数列

6、求N的阶乘

7、杨辉3角

高级语言程序设计(C)复习题2

一、选择题

1.下列字符中,ASCII码值最大的是__D。

A)AB)aC)XD)x

2.以下所列的C语言常量中,错误的是__D。

A)0xFFB)1.2e-5C)'\82'D)123L

3.已知inti;floatf;正确的表达式是__C。

A)(intf)%iB)int(f)%i

C)(int)f%iD)int(f%i)

4.已知x=4.5,y=2.5,求表达式(x+y)/2+(int)y%(int)x的值__A。

A)5.5B)5C)3.5D)3

5.已知inta,b;执行语句a=(b=3*2,b*5),a+6;后变量a的值为__D。

A)6B)12C)24D)30

6.如果a=2,b=3,c=4,d=5,则条件表达式a>b?

a:

c

c:

d的值为__C。

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

8.以下程序执行后输出的值是__B。

A)6,3B)6,4C)0,3D)0,4

main()

{

inti,sum=1;

for(i=1;i<4;i++)sum*=i;

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

}

9.已知inta[][3]={1,2,3,4,5,6,7,8,9};则a[1][2]的值是__B。

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

10.设inti,j=6;执行语句i=(j++)+7;后i的值是__。

A)10B)12C)13D)14

11.设intx=10,y,z;执行y=z=++x;x=y=z后,变量x的值是__D。

A)0B)1C)10D)11

12.以下程序段的输出是___D。

main()

{

charx=‘Z’;

x=(x>=‘A’&&x<=‘Z’)?

(x+32):

x;

printf(“%c”,x);

}

A)AB)aC)ZD)z

13.以下定义语句中,正确的是___D。

A)intn=5,a[n];B)inta[3][]={1,2,3,4,5};

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

14.执行charstr1[10]=“Hello”,str2[10]=“China”;strcat(str1,str2)后输出str1的结果是___。

A)HelloB)ChinaC)HelloChinaD)ChinaHello

15.当调用函数时,实参是一个数组名,则向函数传送的是___。

A)数组的长度B)数组的首元素地址

C)数组每一个元素的地址D)数组每个元素中的值

16.有以下程序段,while循环执行的次数是___。

intk=0;

while(k=1)k++;

A)执行1次B)有语法错,不能执行

C)执行0次D)无限次

17.执行以下程序,程序运行后,如果从键盘上输人-10,则输出结果是___。

A)-9B)-10C)-11D)无输出

main()

{intx;

scanf(“%d”,&x);

if(x>=10)printf(“%d”,x--);

elseprintf(“%d”,++x);

}

二、填空题

1.转义字符\b的功能是___退格___.

3.若已知,a=30,b=20,则表达式!

a

4.若已知,a=3,b=4,c=5,则表达式!

(a>b)&&!

c||1的值为_____1_。

(运算符优先顺序从低到高为:

||&&!

强制类型转换())

5.有如下程序片段:

inta,b,c;

printf(“inputa,b,c:

”);

scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);

欲使a=1、b=3、c=3,正确的输入形式为__a=1,b=2,c=3__。

6.若有说明inta[][3]={{1,2},{0},{3,4,5},{7,8,9}},则a数组共有___12个元素。

7.设i,j,k均为int型变量,则执行完下面的for循环后,k的值为_10_______。

for(i=0,j=10;i<=j;i++,j--)k=i+j;

8.函数调用有哪两种方式____函数语句____和_函数表达式_____。

三、程序填空题

1、以下程序的输出结果是__9,15____

inta,b;

voidfun()

{b=20;a=10;}

main()

{inta=9,b=15;

fun();

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

}

四、编程题

1、输出1000之内的所有完数

2、用选择法、冒泡法对10个整数排序。

3、写一个判断素数的函数,在主函数输入一个整数,输出是否素数的信息。

4、编程输出输出所有的“水仙花数”,

输出格式要求:

每个水仙花数输出宽度为5,每输出2个水仙花数换行。

5、输出Fibnac数列

6、求N的阶乘

7、杨辉3角

第1章

1、每个C程序必须有且只能有一个main函数。

2、下列语句段的输出结果是:

579。

inta,b,sum;

a=123;b=456;

sum=a+b;

printf("%d\n",sum);

3、一个函数由函数首部和函数体两部分组成。

4、C程序总是从main函数开始执行的,与它的位置无关。

5、C语言每个语句和数据声明的最后必须有一个分号。

6、C语言输入和输出的操作是由库函数scanf和printf等函数来完成的。

7、C语言可以用/*……*/或者//对C程序中的任何一行或数行做注释。

8、运行C程序的步骤有那几个?

答:

1)上机输入与编辑源程序

2)对源程序进行编译

3)与库函数连接

4)运行目标程序

9、结构化程序设计的三种基本结构是:

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

第2章

1.下列语句段的输出结果是:

e,f

charc1=’E’,c2=’F’;

c1=c1+32;c2=c2+32

printf(“%c,%c”,c1,c2);

2.下列语句段的输出结果是:

A,B

charc1,c2;

c1=65;c2=66;

printf(“%c,%c”,c1,c2);

3.下列语句段的输出结果是:

7,5,2

inta,b,c;

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

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

4.下列语句段的输出结果是:

123

inta;

a=123.4567;

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

5.下列语句段的输出结果是:

3

inta;

a=10/3;

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

6.下列语句段的输出结果是:

3

inti=289;

charc;

c=i;

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

7.下列语句是否正确:

错误

inta=b=c=10;

8.下列语句段的输出结果是:

20,10

inta=10,b=20,t;

t=a;a=b;b=t;

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

9.下列语句段的输出结果是:

3.33

doublea,b,c;

a=1.111111111;

b=2.22222222;

c=a+b;

printf(“%4.2f”,c);

9.下列语句段的输出结果是:

4.561230e+002

printf(“%e\n”,456.123);

10.有定义

inta;doubleb;charc;floatd;

给以上四个变量输入相应值的输入语句是:

scanf(“%d%lf%c%f”,&a,&b,&c,&d);

11.下列语句段的输出结果是:

HOW

chara=’H’,b=’O’,c=’W’;

putchar(a);putchar(b);putchar(c);

12.下列字符中,ASCII码值最大的是__________。

D

A)AB)aC)XD)x

13.以下所列的C语言常量中,错误的是__________。

A

A)'\82'B)1.2e-5C)123LD)0xFF

14.已知inti;floatf;正确的表达式是__________。

D

A)(intf)%iB)int(f)%i

C)int(f%i)D)(int)f%i

15.已知x=4.5,y=2.5,求表达式(x+y)/2+(int)y%(int)x的值________。

D

(运算符优先顺序从低到高为:

+%强制类型转换())

A)3B)5C)3.5D)5.5

16.已知inta,b;执行语句a=(b=3*2,b*4),a+6;后变量a的值为__________。

C

(运算符优先顺序从低到高为:

,=)

A)6B)12C)24D)30

19.设inti,j=5;执行语句i=(++j)+8;后i的值是__________。

D

A)10B)12C)13D)14

20、下列表达式的值为0的是()C

A.3﹪5B.3/5.0C.3/5D.3<5

21、正确的C语言用户自定义标识符是()A

A.printB.floatC.when?

D.random﹪2

22.已知inta=5;则执行a+=a-=a*a;语句后,a的值为()。

A)5B)0C)-20D)-40

22.x,y,z被定义为float型变量,若从键盘给x,y,z输入数据,正确的输入语句是()。

A)floata、b、c;B)scanf("%f%f%f",&a,&b,&c);

C)scanf("%f%f%f",a,b,c);D)scanf("%lf%lf%lf",&a,&b,&c);

23.表达式4.5+3/2的计算结果是__________。

5.5

24.若已知,a=10,b=20,则表达式!

a

1

25.若已知,a=3,b=4,c=5,则表达式!

(a>b)&&!

c||1的值为__________。

1

第3章

1.如果a=1,b=2,c=3,d=4,则条件表达式a>b?

a:

c

c:

d的值为______C___。

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

2.能正确表示a≥10或a≤0的关系表达式是__________。

D

A)a≥10ora≤0B)a>=10|a<=0

C)a≥10||a≤0D)a>=10||a<=0

3.(a=3)>(b=5)的逻辑值是:

1

4.设a=1,b=2,c=3,d=4,则a+b>c+d的逻辑值是:

0;a+b==c+d的逻辑值是:

0a+b!

=b+c的逻辑值是1;

5.设a=1,b=2,c=3,d=4,则a>b&&d>c的逻辑值是0;a>b||d>c的逻辑值是1;!

(a>b)的逻辑值是1;5>3&&8<4-!

0的逻辑值是:

0;a||b+c&&b-c的值是:

1

6.有一个函数

写程序输入x,输出y。

7.给出一分数成绩(分数为0到10的整数),要求输出等级成绩,分数为9和10的等级为“A”,8为“B”,7为“C”,6为“D”,0~5为“E”。

其余分数输出错误。

要求用switch结构编写该程序。

8.有3个实数a,b,c由键盘输入,输出其中最大的数。

9.将if(a>b)max=a;elsemax=b;语句写成条件运算表达式是max=。

(a>b)?

a:

b;

10.下列程序段执行后的输出结果是:

3,4

inta=4,b=3,t;

if(a>b)

{temp=a;a=b;b=temp;}

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

11.下列程序段执行后的输出结果是:

5,10,20

floata=10,b=5,c=20,temp;

if(a>b)

{temp=a;a=b;b=temp;}

if(a>c)

{temp=a;a=c;c=temp;}

if(b>c)

{temp=b;b=c;c=temp;}

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

12.下列程序段执行后的输出结果是:

1

intx=10,y;

if(x>=0)

if(x>0)y=1;

elsey=0;

elsey=-1;

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

13.下列程序段执行时,从键盘输入字符B后,程序的输出结果是:

1

charch;

scanf("%c",&ch);

ch=(ch>='A'&&ch<='Z')?

ch+32:

ch;

printf("%c\n",ch);

14.下列程序段执行时从键盘输入字符C后,程序的输出结果是:

60~69

chargrade;

scanf("%c",&grade);

switch(grade)

{case'A':

printf("85~100\n");break;

case'B':

printf("70~84\n");break;

case'C':

printf("60~69\n");break;

case'D':

printf("<60\n");break;

default:

printf("dataerror!

\n");}

15.以下程序运行后,如果从键盘上输人10,5↙,则输出结果是5,10。

intx,y;

scanf("%d,%d",&x,&y);

if(x

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

else

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

第4章循环结构程序设计

1.下列程序段执行后的输出结果是:

0,15

intsum=0,i=5;

while(i>=1)

{sum=sum+i;

i--;

}

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

2.下列程序段执行时从键盘输入9后,程序的输出结果是:

19

intsum=0,i;

scanf("%d",&i);

do

{sum=sum+i;

i++;

}while(i<=10);

printf("%d",sum);

3.下列程序段执行后的输出结果是:

21

intsum=0,i;

for(i=5;i<=10;i=i+2)

sum=sum+i;

printf("%d\n",sum);

4.下列程序段执行后的输出结果是:

20,30,50,80

intf1,f2,i;

f1=10;f2=10;

for(i=1;i<=2;i++)

{f1=f1+f2;

f2=f2+f1;

printf("%d,%d",f1,f2);}

5.下列程序段执行后的输出结果是:

35

inti;

for(i=3;i<=10;i=i+2)

{if(i==7)break;

printf("%d",i);}

6.下列程序段执行后的输出结果是:

359

inti;

for(i=3;i<=10;i=i+2)

{if(i==7)continue;

printf("%d",i);}

7.编程求1-100内所有奇数之和,并输出结果。

#include

main()

{

inti,s=0;

for(i=1;i<100;i+=2)

s=s+i;

printf("s=%d\n",s);

}

8.编程输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方之和等于该数本身。

例如,153是一个水仙花数,因为

153=1*1*1+5*5*5+3*3*3

输出格式要求:

每输出一个水仙花数换一行。

#include

main()

{

inti,x,y,z,s;

for(i=100;i<999;i++)

{

x=i/100;

y=(i/10)%10;

z=i%10;

s=x*x*x+y*y*y+z*z*z;

if(i==s)printf("%d",i);

}

}

9.下面程序运行后,从键盘上输入Computer↙,输出结果是Amknsrcp

#include

voidmain()

{

charc;

while((c=getchar()

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

当前位置:首页 > 表格模板 > 合同协议

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

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