高职上机C语言试卷A答案

发布 2023-12-27 01:25:09 阅读 4716

昌吉职业技术学院2008至2009学年第一学期高职。

c语言程序设计》期末试卷(a卷)答案及评分标准jsjggks08091001a

一、 填空(共12分,每空0.5分)

1.c语言是由函数构成的,一个c程序中至少包含主函数 。因此, 函数是c程序的基本单位。

2.c语言的基本数据类型有整型 、 字符型 、 枚举类型和实型数据,其中实型数据又分为单精度和双精度。

3、c语言中,八进制整常量以 0 开头,十六进制整常量以 0x 开头。

4、十进制数77转化为八进制数为 0115 ,十进制数-2248转化为十六进制为 0xf738 。

5、将下列运算符优先级从高到底顺序排列:>>

6、‘x’在内存中占 1 字节,“x”在内存中占 2 字节,“\101”在内存中占 2 字节。

7、整型变量i和j,i的初始值为3,执行表达式语句j=(i++)i++)i++)后变量i的值为 6 ,变量j的值为: 9 。

8、整型变量a、b、c它们的初值都是0,运行表达式:++a&&+b&&+c后,a,b,c的值分别为: 1 , 1 , 0 。

若在同样的初值的条件下,运行表达式后++a||b++|c后,a,b,c的值分别为: 1 , 0 , 0 。

二、选择题(共15分,每题1分)

1)下列变量名中合法的是( c )

a)b.c.tom b)3a6b c)_6a7b d)$abc

2)“bb\\”在内存中占的字节数为( b ),此字符串的长度为( a )。

a)6 b)7 c)8 d)9 e)10 f)11

3)以下选项中可作为c语言合法整数的是(c )

a)10110b b)0386 c)0xffa d)x2a2

4)以下不能定义为用户标识符的是(d )

a)scanf b)void c)_3com_ d)int

5)以下选项中非法的表达式是(d )

a)0<=x<100 b)i=j= =0 c)(char)(65+3) d)x+1=x+1

6)有定义语句:int x, y;,若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是(a )

a)11 12《回车》 b)11, 12《回车》

c)11,12《回车》 d)11,《回车》

12《回车》

7)设有如下程序段:

int x=2002, y=2003;

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

则以下叙述中正确的是( d)

a)输出语句中格式说明符的个数少于输出项的个数,不能正确输出。

b)运行时产生出错信息。

c)输出值为2002

d)输出值为2003

8)设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是(c )

a)x=x*100+0.5/100.0b)x=(x*100+0.5)/100.0;

c)x=(int)(x*100+0.5)/100.0; d)x=(x/100+0.5)*100.0;

9)有定义语句:int a=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是( a )

a) if (ca)17 b)17.500000 c)17.5 d)16

12)有以下函数定义:

void fun(int n, double x)

若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是( )

a)fun(int y,double m); b)k=fun(10,12.5);

c)fun(x,nd)void fun(n,x);

13)已定义c为字符型变量,则下列语句中正确的是(a )

a)c='97'; b)c="97"; c)c=97; d)c="a";

14)以下不能正确定义二维数组的选项是(d )

a)int a[2][2]=,b)int a[2]=;

c)int a[2][2]=,2,3}; d)int a[2]

15)表达式:0?2.0,3/2:= 3》=2?55:6.0,4%3的值为( c )。

a)1.333333 b)1 c)6.0 f)1.5

三、写出以下程序的运行结果(共40分,每题5分)

1)有以下程序。

main()

int a; char c=10;

float f=100.0; double x;

a=f/=c*=(x=6.5);

printf("%d %d %3.1f %3.1f",a,c,f,x);

程序运行后的输出结果是 1 65 1.5 6.5

2)有以下程序。

main()

int a=1,b=2,m=0,n=0,k;

k=(n=b>a)||m=a(3)有以下程序。

main()

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

printf(“%d,”,i);

printf(“%d,”,i++)

程序运行后的输出结果是: 1,3,5,7,8

4)有以下程序。

#include <>

main()

printf("%d",null);

程序运行后的输出结果是 0

5)有以下程序。

#include <>

#define f(x,y) (x)*(y)

main()

int a=3, b=4;

printf("%d", f(a++,b++)

程序运行后的输出结果是 12

6)有以下程序。

fun(int a, int b)

if(a>b) return(a);

else return(b);

main()

int x=3, y=8, z=6, r;

r=fun(fun(x,y), 2*z);

printf("%d", r);

程序运行后的输出结果是 12

7)有以下程序。

main()

int x=2;

while (x- -

printf(“%d ”,x);

程序运行后的输出结果是___1___

8)有以下程序。

main()

int x=3, y=2, z=1;

printf("%d",x/y-z);

程序运行后的输出结果是 0

四、程序填空(共12分,每空2分)

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

main()

float x,max,min;

scanf(“%f”,&x);

max=x; min=x;

while x>=0

{ if(x>max) max=x;

if x scanf(“%f”,&x);

printf(“max=%fmin=%f”,max,min);

2.计算两个数的最大公约数。

#include<>

main( )

int x,y,i,max;

int result=1;

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

if(x>=y)

max=x;

elsemax=y

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

if( x%i= =0&&y%i= =0 )

result=i;

printf(“the max common divisor is %d”, result );

五、在计算机上编写下列程序、调试并输出结果。(以姓名加题号为文件名保存程序)(共21分)

1. 某考查课程分数和等级对应情况如下:100-90分 a,80-89分 b,70-79分 c,60-69分 d,0-50分 e,大于100分,小于0分为错误数据。编写程序,输入不同的分数(score)能得到相应的等级(grade)。

(7分)

main( )

int score;

char grade;

switch(score/10)

case 10:

case 9: printf(“grade is: \a\’”break;

case 8: printf(“grade is: \b\’”break;

case 7: printf(“grade is: \c\’”break;

case 6: printf(“grade is: \d\’”break;

case 5:

case 4:

case 3:

case 2:

case 1:

case 0: printf(“grade is: \e\’”break;

default:printg\f(“error data!”)

2. 计算s=1!+2!+3!+4!+…n! 要求用函数计算阶乘。(7分)

for(int i=1,s=0,c=1;i<=n;i++

2019秋C语言上机试卷C03答案

2007年秋二级 c语言上机试卷 试卷代号c03 答案。一 改错题 20分 程序功能 对于s数组中保存的五个字符串,删除其中不符合下列组成规则的字符串,输出s数组中剩余的字符串。字符串组成规则 由字母 数字 下划线组成,首字符非数字。测试数据与运行结果 s数组中五个字符串 a 1,a12,aaa,s...

2019秋C语言上机试卷C03答案

2008年秋二级 c语言上机试卷 试卷代号c03 答案。一 改错题 20分 程序功能 函数intersec的功能是 找出所有在两个字符串集合s1和s2中都出现的字符串,将这些字符串放入一个新集合s3中,函数返回新集合中字符串的个数。测试数据与运行结果 测试数据 s1集合 s2集合 运行结果 for ...

2019秋C语言上机试卷C01答案

2007年秋二级c语言上机试卷 试卷代号c01 答案。一 改错题 20分 程序功能 重新排列一维数组元素的顺序,使得左边的所有元素均为偶数并按由大到小的次序存放,右边的所有元素均为奇数并按由小到大的次序存放。测试数据与运行结果 数组原始数据为 17 15 10 14 16 17 19 18 13 1...