C语言程序设计试卷(含答案)

  • 格式:pdf
  • 大小:153.01 KB
  • 文档页数:9

C语⾔程序设计试卷(含答案)

.

2015年春季学期

《C 语⾔程序设计》试卷A

⼀.选择(每道⼩题2分,合计30分)1、以下选项中合法的标识符是( )。 A)1_1

B)1-1

C)_11

D)1_ _

2、若函数中有定义语句:int k;,则( )。 A)系统将⾃动给k 赋初值0 B)这时k 中的值⽆定义 C)系统将⾃动给k 赋初值-1

D)这时k 中⽆任何值

3、以下选项中,能⽤作数据常量的是( ) 。

A)o115

B)0118

C)1.5e1.5

D)115L

4、设有定义:int x=2;,以下表达式中,值不为6的是( )。 A)x*=x+1 B)X++,2*x C)x*=(1+x)

D)2*x,x+=2

5、程序段:int x=12; double y=3.141593;printf("%d%8.6f",x,y);的输出结果

是( )。 A)123.141593 B)12 3.141593C)12,3.141593

D)123.1415930

6、把2进制数10000111101转化为⼗进制数为( )。

A)1083

B)1084 C)1085

D)1086

7、以下是if 语句的基本形式: if(表达式) 语句 其中"表达式"( )。 A)必须是逻辑表达式

B)必须是关系表达式 C)必须是逻辑表达式或关系表达式

D)可以是任意合法的表达式

8、有以下程序

#include main()

{ int x; scanf("%d",&x);if(x<=3); else

if(x!=10) printf("%d\n",x);}

程序运⾏时,输⼊的值在哪个范围才会有输出结果( )。 A)不等于10的整数 B)⼤于3且不等于10的整数 C)⼤于3或等于10的整数D)⼩于3的整数

9、有以下程序

#include main()

{ int a=1,b=2,c=3,d=0; if (a==1 && b++==2)

if (b!=2||c--!=3) printf("%d,%d,%d\n",a,b,c);

else printf("%d,%d,%d\n",a,b,c); else printf("%d,%d,%d\n",a,b,c);} 程序运⾏后输出结果是( )。 A)1,2,3 B)1,3,2 C)1,3,3

D)3,2,1

10、以下程序段中的变量已正确定义 for(i=0;i<4;i++,i++)

for(k=1;k<3;k++); printf("*"); 程序段的输出结果是( )。 A)********

B)**** C)** D)*

11、写出下⾯程序的输出结果( )。

#include int main (void)

{int i,j,x,y,m;

int a[3][3]={{1,3,12},{14,9,1},{9,0,4}}; m=a[0][0]; x=0; y=0;

for(i=0;i<3;i++) for(j=0;j<3;j++) if(m

printf("%5d",a[x][y]); return 0;}

班级: 学号: 姓名:………………………………密…………………………………………封…………………………………………线…………………………………………….

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

12、写出下⾯程序的输出结果()。#include

int main(void)

{int a[]={1,4,7,10,13};

int y=1,i,*p; p=&a[1];

for(i=0;i<3;i++) y+=*(p+i);

printf("y=%d\n",y);return 0;}

A)22 B)24 C)26 D)28

13、写出下⾯程序的运⾏结果()。long fib(int n)

{if(n>2)

return(fib(n-1)+fib(n-2));

else return(2);}

#includeint main(void)

{printf("%ld\n",fib(3));

return 0;}

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

14、写出下⾯程序的运⾏结果()。#include

int f(int a)

{int b=0;

static c=3;a=c++,b++;

return a;}

int main(void)

{int a=2,i,k;

for(i=0;i<2;i++) k=f(a++);

printf("%d\n",k);return 0;}

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

15、写出下⾯程序的输出结果()。#include "stdio.h"

int main(void)

{struct student

{ char name[10]; float k1;float k2;

}a[2]={{"zhang",100,70},{"wang",70,80}},*p=a;

printf("\nname:%s total=%f",p->name, a[1].k1+a[1].k2);

return 0;}

A) name:wang total=170.000000 B) name:wang total=150.000000

C) name:zhang total=170.000000 D) name:zhang total=150.000000

⼆、填空(每题2分,共计20分)1、将下列不同进制的数从⼤到⼩排列:(110110010)

2

、(208)10

、(322)8

、(A8)

16

________________ ____。

2、把⼗进制数121转化为2进制数为。3、定义int a=20;,写出执⾏下列语句后a的值: a/=a+a _______。

4、下⾯程序的输出结果为。

#include

int main(void)

{int a=3,b=4,c=5,k;

k=c>a>b && c||c/b;

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

return 0;}

5、下⾯程序的输出结果为。

#include

int main(void)

{int k=5,b=2;

k*=b+++3;

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

return 0;}

6、下⾯程序的输出结果为。

#include

int main(void)

{int a,b,k;

k=(a=2,b=5,a>b?a++:b++,a+b);

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

return 0;}

7、下⾯程序的输出结果为。

#include

int main(void)

.

{int a=2,b=3;

float x=3.5,y=2.5,k;

k=(float)(a+b)/2+(int)x%(int)y; printf("%.2f\n",k);

return 0;}

8、下⾯程序的输出结果为。#include

int main(void)

{int a,b,c,d,x;

a=c=0; b=x=1; d=10;

if(a) d=d-5;else if(!b)

if(!c) x=5;

else x=25;

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

return 0;}

9、下⾯程序的输出结果为。#include

int main(void)

{int a=0;

if(a=1) a+=10;

printf("a=%d",a);

return 0;}

10、下⾯程序的输出结果为。#include

int main(void)

{int x=1,y=0,a=0,b=0;

switch(x)

{ case 1:

switch(y)

{ case 0: a++; break;

case 1: b++; break;}

case 2: a++;b++; break;

case 3: a++;b++;}

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

return 0;} 三、简答(1、2题每题5分,3题10分,共计20分)

1、简述程序设计的⼀般过程。

2、简述软件开发的⽣命周期。

3、通过你对本课程的学习,谈谈你对C语⾔的理解。

.

四、编程(1、2题每题7分,3、4题每题8分,共计30分)1、编程解决货物征税问题。价格在1万元以上的征5%,5000元以上1万元以下的征3%,1000元以上5000以下的征2%,1000元以下的免税,读⼊货物价格,计算并输出税⾦。

2、编程实现下⾯的功能:输出1~500中能被7除余5、被5除余

3、被3除余2的数(每⾏输出5个数)。3、编程实现下⾯的功能:把从键盘输⼊的字符串逆序存放并输出。

4、编写程序实现下⾯的功能:主函数接受键盘输⼊的年、⽉、⽇,通过⼦函数计算该⽇是该年的第⼏⽇。

.

2015学年春季学期

《C语⾔程序设计》试卷A答案⼀、选择(每题2分,共计30分)1—5 CBDDA 6—10 CDBCD 11—15 AABCD

⼆、填空(每题2分,共计20分)1、(110110010)

2、 (322)

8

、(208)10

、(A8)16

2、1111001

3、0

4、1

5、25

6、8

7、3.50

8、d=10,x=1 9、a=11 10、a=2,b=1

三、简答(1、2题每题5分,3题10分,共计20分)1、简述程序设计的⼀般过程。

(1) 分析问题。提出解决问题的可⾏⽅案。

(2) 确定算法。针对提出的可⾏⽅案确定解决问题、完成任务的每⼀个细节步骤。

(3) 编程。使⽤程序设计语⾔把上述算法严格地描述出来(即写成程序),输⼊到计算机⾥并存盘。

(4) 在计算机上运⾏并调试这个程序。如果在运⾏过程中发现了错误,就仔细分析出错的原因,然后更正错误。再次运⾏该程序,直到程序准确⽆误并得到正确的输出结果为⽌。(5) 总结。写出书⾯报告。

2、简述软件开发的⽣命周期。

⼀个软件的⽣存周期包括以下⼏个阶段:(1) 问题定义与需求分析。

(2) 总体设计(或称概要设计)。

(3) 详细设计。

(4) 编写程序和单元测试。

(5) 综合测试和确定运⾏。

(6) 系统维护。

3、通过你对本课程的学习,谈谈你对C语⾔的理解。

C语⾔是⼀种成功的系统描述语⾔,⽤C语⾔开发的UNIX操作系统就是⼀个成功的范例;同时C语⾔⼜是⼀种通⽤的程序设计语⾔,在国际上⼴泛流⾏。世界上很多著名的计算公司都成功的开发了不同版本的C语⾔,很多优秀的应⽤程序也都是⽤C语⾔开发的,它是⼀种很有发展前途的⾼级程序设计语⾔。