第5次实验C程序设计试题及答案.docx

上传人:b****5 文档编号:8107804 上传时间:2023-01-28 格式:DOCX 页数:19 大小:107.32KB
下载 相关 举报
第5次实验C程序设计试题及答案.docx_第1页
第1页 / 共19页
第5次实验C程序设计试题及答案.docx_第2页
第2页 / 共19页
第5次实验C程序设计试题及答案.docx_第3页
第3页 / 共19页
第5次实验C程序设计试题及答案.docx_第4页
第4页 / 共19页
第5次实验C程序设计试题及答案.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

第5次实验C程序设计试题及答案.docx

《第5次实验C程序设计试题及答案.docx》由会员分享,可在线阅读,更多相关《第5次实验C程序设计试题及答案.docx(19页珍藏版)》请在冰豆网上搜索。

第5次实验C程序设计试题及答案.docx

第5次实验C程序设计试题及答案

2013/2014学年第2学期

课程代码:

课程名称:

程序设计与实践(C)试卷:

A□、B□

考试形式:

闭卷考试时间:

分钟

学号姓名任课教师______专业得分

一、选择题(每题1分,共20分)

1.是不合法的用户自定义标识符号。

A._char         B.a.b           C.x            D.st2_flag

答案:

B

2.在C语言的源程序中main函数。

A.可以没有                        B.可以有多个

C.有且只有一个                    D.若有,只有一个

答案:

C

printf(““,i+x-c*8);

 A.%f         B.%d          C.%c         D.%s

答案:

A

4.有以下代码:

inta,b;

printf(“%d\n”,(a=2,b=5,b++,a+b));输出函数所输出的表达式值为。

A.2             B.6             C.8            D.7

答案:

C

5.不是转义字符。

A.‘\n’        B.‘\t’        C.‘\b’        D.“\9”

答案:

D

6.在内存中需要个字节来存放转义字符‘\n’.

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

答案:

A

7.不是合法的数值常量。

A.123           B.‘M’          C.0892         D.“Flag”

答案:

C

8.在一个C程序中,main函数的位置是。

A.程序之首      B.程序任意处          C.程序之末       D.程序中间

答案:

B

9.有以下代码:

inta=3;

printf(“%d,%d\n”,a<1&&++a>1,a);

输出函数所输出的表达式值为。

A.0,4         B.0,3         C.1,4        D.1,3

答案:

B

10.有以下代码:

inta=5;

printf(“%d\n”,a+=a-=a*a);输出函数所输出的表达式值为。

A.-15           B.5             C.25           D.-40

答案:

D

11.有以下代码:

doublex=1,y;

y=x+3/2的值。

A.1             B.2             C.2.0          D.2.5

答案:

C

12.有以下代码:

doublex=3.5,y=2.5,z;

z=(int)x+y的值。

A.5.5           B.5.0           C.6            D.6.0

答案:

A

13.在C语言中,5种基本数据类型的存储空间长度的排列顺序为。

  A.char

  B.char=int

  C.char

  D.char=int=long<=float

答案:

A

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

  A.必须为字母                      B.必须为下划线             

C.必须为字母或下划线              D.可以是任意字符

答案:

C

15.运算要求运算数必须是整型。

  A./             B.++            C.!

=           D.%

答案:

D

16.有以下代码:

inta,b; 

scanf("a=%d,b=%d",&a,&b);

将10存入变量a,20存入变量b,数据输入方式为。

  A.10 20                          B.10,20

  C.a=10,b=20                       D.a=10b=20

答案:

C

17.有以下代码:

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

f=a>b>c的值。

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

答案:

A

18.是sizeof(float)的值。

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

答案:

D

19.是代数式|x3+lgx|,对应的C语言表达式。

  A.abs(x*3+logx)                   B.abs(x^3+log10x)

  C.fabs(pow(x,3)+log10(x))       D.fabs(pow(x,3)+logx)

答案:

C

20.不是C语言的语句。

  A.x=x+1                           B.scanf("%d",&a); 

  C.{t=a;a=b;b=t;}                D.;        

答案:

A

二、程序改错题(每题4分,共20分)

1、

#1main()

 #2{ inta=3;

 #3   if(a=2)

 #4    printf("ok");

#5    else

#6      printf("hello");

预期的结果:

答案:

#0#include

#3if(a==2)

#7}

        

2、

#1main()

#2 inta=65;

#3 printf("%d,%d,%o,%x",a,a,a);

预期的结果:

 答案:

#0#include

#2{inta=65;

#3printf(“%c,%d,%o,%x”,a,a,a,a);

#4}      

3、

#1main()

#2{ inti=j=3;

#3printf("%d,%d",++i,++j);}

预期的结果:

 答案:

#0#include

#2{inti=3,j=3;

#3printf(“%d,%d”,++i,j++);}

          

4、

#1main()

#2{ inta,b,c;

#3    a=10;b=20;c=30; 

#4if(a>b) a=b; b=c; c=a;

#5   printf("%f,%f,%f",a,b,c);

#6}

预期的结果:

    答案:

#0#include

#4if(a>b) {a=b; b=c; c=a;}

#5printf(“%d,%d,%d”,a,b,c);

       

5、

#1main()

#2  { intx=1,a=0,b=0;

#3    switch(x)

#4   { case1:

 a++;       

#5      case2:

 a++;b++;break;

#6      default:

b++;

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

预期的结果:

    答案:

#0#include

#6      default:

b++;}

#7 printf("a=%d,b=%d\n",a,b);}

三、设计题(每题5分,共30分)

1、      根据框图编写代码 

答案:

#include

main()

{intx,y,z;

printf("inputx,y");

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

if(x>2){if(y>2){z=x+y;printf("zis%d\n",z);}

elseprintf("xis%d\n",x);}

}

2、 根据框图编写代码 

答案:

#include

main()

{intn,s=0;

for(n=0;n<100;n++)

s=s+n;

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

}

3、某幼儿园只收2至6岁的小孩,2~3岁编入小班,4岁编入中班,5~6岁编入大班,编制程序实现每输入一个年龄,输出该编入什么班。

#include

f1()

{

x;

for(;;)

{

printf("输入入园幼儿年龄");

scanf("%d",&x);

if(x>=2&&x<=6)break;

}

returnx;

}

f2(

{

return

;

}

main()

{

switch(f2(f1()))

{case1:

printf(“您的孩子被编入小班!

\n”);break;

case2:

printf(“您的孩子被编入中班!

\n”);break;

case3:

printf(“您的孩子被编入大班!

\n”);break;

}

}

答案:

int

int

int

intx

(x<=3)?

1:

(x==4)?

2:

3

 

4、读下列程序框图,写出s的值。

答案:

s=15

 

5、下列代码是判断闰年,填写代码中的空白。

#include

intf1()

{

intx;

printf("输入年份");

scanf("%d",&x);

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

return

;

}

intf2(intx)

{

return

;

}

main()

{

?

printf("年是闰年"):

printf("年不是闰年");

}

答案:

x

((x%4==0&&x%100!

=0)||(x%400==0))?

1:

0;

(f2(f1()))

6、给出30个数:

1,2,4,7,11,……,其规律是:

第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推,要计算这30个数的和,现已给出了该问题算法的程序框图.

(1)补充程序框图,使之能完成该题算法功能.

(2)根据程序框图写出程序.(所用变量要与算法中一致)

 

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

答案:

i<=30

#include

main()

{inti,s=0,p=1;

s=s+p

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

{s=s+p;p=p+i;}

p=p+i

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

}

四、编程题(每题5分,共30分)

1、编程实现:

输入圆柱体的半径和高,输出其体积。

(已知圆柱体的体积公式为3.1415926×r2×h)

答案:

#include

#definePI3.1415926

floatf1()

{

floatx;

printf("inputdata");

scanf("%f",&x);

returnx;

}

floatf2(floatx,floaty)

{

returnPI*x*x*y;

}

main()

{

printf("v=%f\n",f2(f1(),f1()));

}

2、输入一个三位数,输出其各位数字之和,例如:

781,7+8+1=16。

答案:

#include

intf1()

{

intx;

for(;;)

{printf("inputdata");

scanf("%d",&x);

if(x>=100&&x<=999)returnx;}

}

intf2(intx)

{ints=0;

while(x)

{

s=s+x%10;

x=x/10;

}

returns;

}

main()

{

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

}

3、输入一个正整数,判断其是否既是5的倍数又是7的倍数。

若是,输出yes;否则输出no。

答案:

#include

intf1()

{

intx;

printf("inputdata");

scanf("%d",&x);

returnx;

}

intf2(intx)

{

return(x%5==0)?

((x%7==0)?

1:

0):

0;

}

main()

{

f2(f1())?

printf("Yes\n"):

printf("No\n");

}

4.编程实现如下功能,即:

程序运行时,输入整数n(0

如输入5,则输出:

答案:

#include

main()

{

inti,j,n;

charc;

do{

printf("输入一整数(0

");

scanf("%d",&n);

}while(n<0||n>10);

for(i=0;i

for(j=0;j

printf("");

for(j=0;j<2*i+1;j++)

printf("%c",'A'+j);

printf("\n");

}

}

 

5.双12期间,某网店优惠规定:

所购物品不超过150元时,按九折付款,如超过150元不足500元,超过150元部分按8折收费,超过500元部分按7折收费,请编一程序完成网店计费的工作。

答案:

#include

floatf1()

{

floatx;

printf("输入价格");

scanf("%f",&x);

returnx;

}

floatf2(floata)

{return(a<=150)?

a*0.9:

(a<500)?

150*0.9+(a-150)*0.8:

150*0.9+350*0.8+(a-500)*0.7;

}

main()

{

printf("您应支付:

%.2f",f2(f1()));

}

6.2011年7月7日公布的最新金融机构人民币存款基准利率。

活期存款:

0.50%

定期存款分为六类:

利息=本金×利率×存款时间

三个月:

3.10%

半年:

3.30%

一年:

3.50%

二年:

4.40%

三年:

5.00%

五年:

5.50%

例如:

假设本金一万元,定期三个月利息是77.5元(10000×3.10%×3/12=10000×0.031×0.25=77.5)请编一程序完成根据本金和存款时间计算利息的工作。

答案:

#include

#include

voidShowMenu()

{

char*str[8]={"请选择存款时间:

","1:

三个月","2:

半年","3:

一年","4:

二年","5:

三年","6:

五年","0:

退出"};

inti;

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

printf("\n\t%s\n",str[i]);

}

floatf1()

{

floatx;

printf("输入本金");

scanf("%f",&x);

returnx;

}

voidf2(floatx,floaty,floatz)

{

system("cls");

printf("应支付利息%.2f\n",x*y*z);

system("pause");

}

main()

{

charch;

for(;;)

{

system("cls");

ShowMenu();

ch=getch();

switch(ch)

{

case'1':

f2(f1(),0.031,3.0/12);break;

case'2':

f2(f1(),0.033,6.0/12);break;

case'3':

f2(f1(),0.035,1);break;

case'4':

f2(f1(),0.044,2);break;

case'5':

f2(f1(),0.05,3);break;

case'6':

f2(f1(),0.055,5);break;

case'0':

return;

break;

defalut:

break;

}

}

}

五、文字题(字数500字左右)

简论C语言参数传递

2013/2014学年第2学期

课程代码:

课程名称:

程序设计与实践(C)试卷:

A□、B□

考试形式:

闭卷考试时间:

分钟

学号姓名任课教师______专业得分

一、选择题(每题1分,共20分)

1、

2、

3、

4、

5、

6、

7、

8、

9、

10、

11、

12、

13、

14、

15、

16、

17、

18、

19、

20、

二、程序改错题(每题4分,共20分)

1、

2、

3、

4、

5、

 

三、设计题(每题5分,共30分)

1、

 

2、

 

3、

 

4、

 

5、

 

6、

四、编程题(每题5分,共30分)

1、

 

2、

 

3、

 

4、

 

5、

 

6、

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

当前位置:首页 > 自然科学 > 数学

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

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