当前位置:文档之家› 10级C程序设计基础期末试题c及答案

10级C程序设计基础期末试题c及答案

广东科学技术职业学院(计算机工程技术学院)

2010-2011学年第一学期期末

程序设计基础试卷(C )

(考试班级:10级软件技术等专业) (时间: 120 分钟 | 满分: 100 分)

---------------------------------------------------------------密------------------------------------封-------------------------------------线----------------------------------------

班内序号

考生姓名

学号 班级 试室号

意:密封线内不要答题

密封线外不要写姓名、学号、班级、违者试卷作零分处理

出卷教师:康玉忠

第1页(共5页)

注意:所有题目的答案均要求写在后面的答题纸上.

一.单项选择题(每题2分,共40分)

1.下列四组选项中,均是不合法的用户标识符的选项是 。

A. W P_0 do

B. b-a for int

C. float la0 _A

D. -123 abc TEMP

2.以下叙述不正确的是 。

A) 一个C 源程序必须包含一个main 函数 B) 一个C 源程序可由一个或多个函数组成 C) C 程序的基本组成单位是函数

D) 在C 程序中,注释说明只能位于一条语句的后面

3.为表示关系x ≥y ≥z ,应使用C 语言表达式( )。 A .(x>=y )&&(y>=z) B. (x>=y) and (y>=z) C .(x>=y>=z) D. (x>=z)&(y>=z) 4.以下叙述不正确的是 。

A. 在C 程序中,逗号运算符的优先级最低

B. 在C 程序中,MAX 和max 是两个不同的变量

C. 若a 和b 类型相同,在计算了赋值表达式a=b 后,b 中的值将放入a 中,二b 中的值不变

D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

5. 已知字母A 的ASCII 码为十进制数65,且c2为字符型,则执行语句c2=‘A ’+‘2’-‘0’后,c2中的值为 。

A) B

B) 68 C) 67 D) C

6.指出下面正确的输入语句( )。

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

B. scanf(“%d,%d”,&a,&b) ;

C. scanf(“c=”,c) ;

D. scanf(“% f%d\n”,&f) ;

7.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是。

A) A%2==1 B) !(A%2==0) C) !(A%2) D) A%2

8.判断char型变量ch是否为大写字母的正确表达式是。

A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’)

C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)

9.以下程序的输出结果是_________。

main()

{ int a=4,b=5,c=0,d;

d=!a&&!b||!c;

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

}

A)l B)0C)非0的数D)-1

10.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。

if(x>y) z=x; x=y; y=z;

A) x=10, y=20, z=30 B) x=20, y=30, z=30

C) x=20, y=30, z=10 D) x=20, y=30, z=20

11.以下程序的运行结果是。

main()

{ int m=5;

if(m++>5)

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

else;

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

}

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

12.若运行时给变量x输入10,则以下程序的运行结果是。

main()

{ int x,y;

scanf(“%d”,&x);

y=x>12 ? x+10 : x-12;

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

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

13.以下程序的运行结果是。

main()

{ int a,b,d=241;

a=d/100%9;

b=(-1)&&(-1);

printf(“%d,%d”,a,b); }

A) 6,1 B) 2,1 C) 6,0 D) 2,0

14.设int x=0,y=1;表达式(!x++ || y--)的值是( )。

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

15.break语句不能出现在()语句中。

A.switch B.for C.while D.return

16.分析下面的代码片断,程序执行后count的值为()。

int i,j,count=0;

for(i=4;i>0;i--)

for(j=0;j<5;j++)

count++;

A.20

B. 16

C. 25

D.21

17.设有定义:int a,*pa=&a;以下scanf语句能正确为变量a读入数据的是______。

A. scanf("%d",B);

B. scanf("%d",a);

C. scanf("%d",pa); D . scanf("%d",*pa);

18.有switch语句如下:

switch (k)

{ case 1: s1; break;

case 2: s2; break;

case 3: s3; break;

default: s4;

} 与它的功能相同的程序段是()。

A.if (k = 1) s1; B.if (k == 1) s1;

if (k = 2 ) s2; if (k == 2) s2;

if (k = 3) s3; if (k == 3) s3;

else s4; else s4;

C.if (k == 1) s1; break; D.if (k == 1) s1;

if (k == 2) s2; break; if (k == 2) s2;

if (k == 3) s3; break; if (k == 3) s3;

else s4; if ( !((k == 1) || (k == 2) || (k == 3))) s4;

---------------------------------------------------------------密------------------------------------封-------------------------------------线----------------------------------------

注意:密封线内不要答题

密封线外不要写姓名、学号、班级、违者试卷作零分处理 第4页(共5页)

19.若有如下定义,则( )是对数组元素的正确引用。 int a[10] , *p ; p=a ;

A. *&a[10]

B. a[11]

C. *(p+10)

D. *p 20.若有说明语句: char s[20] = “international ”, *ps = s;

则下面选项中不能代表第1个字符t 的表达式是()。 A .ps+2 B .s[2] C .ps[2] D .ps += 2, *ps

二.判断题 (每题1分,共10分)

1. C 语言源程序文件通过了编译、连接之后,生成一个后缀为.EXE 的文件。 ( ) 2.若用双引号括住空格符,就是一个“空字符串”。( ) 3.x+=1等价于x++。 ( )

4.在C 语言中,非0数值都可表示逻辑真,数值0表示逻辑假。( ) 5.在函数main()中说明的变量的作用域是整个程序。( ) 6.在 C 程序中, APH 和 aph 代表不同的变量。( ) 7.没有返回值的函数一定没有参数。( ) 8.在 C 程序中,“{”、“}”可以不成对出现。( ) 9. 数组名可以作为参数进行传递。( )

10.在 C 程序中, 注释部分可以用两个相同的“/*”括起来。( )

三、程序分析题(每题4分,共20分)。

1.若从键盘输入48,则以下程序的输出结果是 【 】 。

main()

{ int a ;

s canf("%d",&a);

if(a>50)printf("%d ",a); if(a>40)printf("%d ",a); if(a>30)printf("%d ",a); }

2.阅读下面的程序,写出程序的运行结果【 】 #include main()

{

int x=1, total=0, y; while (x<=4) {

y = x*x; total += y; ++x; }

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

---------------------------------------------------------------密------------------------------------封-------------------------------------线----------------------------------------

注意:

封线内不要答题

密封线外不要写姓名、学号、班级、违者试卷作零分处理

3. 写出下列程序的运行结果【】。

main( )

{ int a[6]={2,4,6,8,10,12},i,j;

int b[6]={3,6,9,12,15,18};

for (i=0;i<6;i++) { for (j=0;j<6;j++)

if (a[i]==b[j]) break; if (j<6) printf("%d ",a[i]); } }

4.若有程序段如下:

int k, x[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9,10}; for (k=0; k<5; k++,k++)

printf ("%d ", x[k]);

那么执行后输出的结果是【 】。

5.写出下列程序的运行结果【 】。 fun(int a, int b) { if(a

return (b);

} main()

{ int x=10,y=6,z=2,r;

r=fun(fun(x,y),2*z); printf(“%d \n”,r); }

四.编程序(每题10分,共30分) 1.编程求:sum=1+3+5+7+ (99)

2.编写一个函数fac(n),函数功能求n 的阶乘,并从主函数中调用该函数求2!+4!+6!+8!。

3.某班有十位同学参加C 语言程序设计大赛,请从键盘上输入他们的成绩,并将他们的成绩由高到低进行排序后输出。

广东科学技术职业学院(计算机工程技术学院)

2010-2011学年第一学期期末

程序设计基础试卷答题纸

(考试班级:10级软件技术等专业) (时间: 120 分钟 | 满分: 100 分)

选择试卷类型( A / B )在相应的试卷字母上打勾

一、 单项选择题(每题2分,共40分) (把答案按序号填在对应的表格中)

二、 判断题 (每题1分,共10分)

---------------------------------------------------------------密------------------------------------封-------------------------------------线----------------------------------------

班内序号

考生姓名

学号 班级 试室号

意:密封线内不要答题

密封线外不要写姓名、学号、班级、违者试卷作零分处理

出卷教师:康玉忠

第1页(共5页)

1. 编程一:

2.编程二:=====================================================================

3.编程三:=====================================================================

广东科学技术职业学院(计算机工程技术学院)

2010-2011学年第一学期期末

程序设计基础试卷(C)答案

(考试班级:10级软件技术等专业)

(时间: 120 分钟|满分:100 分)

一、单项选择题(每题2分,共40分)(把答案按序号填在对应的表格中)

二、判断题(每题1分,共10分)

四.编程序(每题10分,共30分)

1.编程计算下列表达式:s=1+3+5+…+99

#include "stdio.h"

main()

{

int i,sum=0;

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

sum+=i;

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

}

2.编写一个函数fac(n),函数功能求n的阶乘,并从主函数中调用该函数求2!+4!+6!+8!。

#include "stdio.h"

float fac(int n)

{ int i;

float f=1.0;

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

f=f*i;

return f;

}

main()

{ int i;

float sum=0;

for (i=2;i<=8;i++,i++)

sum=sum+fac(i) ;

printf("2!+4!+...+8!=%.0f",sum);

}

3.某班有十位同学参加C语言程序设计大赛,请从键盘上输入他们的成绩,并将他们的成绩由高到低进行排序后输出。

#include "stdio.h"

main()

{ int a[10],max,min;

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

scanf("%d",&a[i]);

for(i=1;i<=9;i++) /*排序循环趟数*/

for(j=0;j<10-i;j++) /*i趟比较次数*/

if (a [j] < a [ j+1] ) /*相邻比较逆序交换*/

{ t=a[j]; a[j]=a[j+1]; a[j+1]=t; }

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

printf("%4d",a[i]);

}

相关主题
文本预览
相关文档 最新文档