C语言期末试卷A

发布 2021-04-23 13:24:28 阅读 4554

一、单项选择题(每空 2 分,共 50 分)

请将各小题正确答案的字母序号填到相应小题的下划线上)

1. c语言的运算符按运算对象的数目可以分为 。

a)单目运算一种b)单目和双目运算符。

c)单目、双目和三目运算符 d)单目、双目、三目运算和四目运算符。

2. c语言表达式2/5*10的值是 。

a) 0.04 b)4 c)4.0 d)0

3. 已知变量f和i的类型说明如下:

float f=12.34; int i;

则以下符合c语言语法的表达式是 。

a) i=(int)f%5 b) i=int(f)%5

c) i=f%5 d) i=(int f)%5

4. 能正确表示数学式1≤x≤5的c语言表达式是 。

a)1 <=x<=5b)(x> =1)&(x<=5 )

c)(x>=1 )&x<=5) d)(1 < x)||5> =x)

5. 设变量c的数据类型是char,i的数据类型是int,f的数据类型是float,则c语言表达式c*i+c*f-i+100值的数据类型为 。

a)int b) float c) char d)不确定。

6. 在下列选项中,合法的c语言用户标识符的是。

a) int b)sin c)if d)i+j

7. c程序的执行从开始。

a)程序中的第1个语句 b)程序中的第1个函数。

c)名为main 的函数 d)包含文件的第1个函数。

8. 凡在c语言函数中未指定存储类别的变量,其隐含的存储类别为 。

a)自动(auto) b)静态(static) c)字符串 d)字符或字符型变量值。

9. 以下程序运行时要求输入10和20分别存放在变量x和y中,能正确输入数据的是 。

main()

int x,y;

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

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

说明:用表示换行符,用_表示空格符)

a)10_20 b)x=10,y=20

c)10d)x=10

20y=20

10. 下面程序的运行结果是 。

main()

int a,b;

a=32767;

b=a+1;

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

a)a=32767,b=-32768 b)a=32767,b=32768

c)a=32767,b=1 d)运行出错。

11. 在c语言中,以下错误的描述是 。

a)break语句不能用于循环语句和switch语句外的任何其它语句。

b)在switch语句中使用break语句或continue语句的作用相同。

c)在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环。

d)在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环。

12. 在c语言中,数组作为函数的形参,函数调用时,若用数组名作为函数的实参,则实际上传递给形参的是 。

a)数组首地址b)数组的第一个元素值。

c)数组中全部元素的值 d)数组元素的个数。

13. c语言编译系统对宏命令是 。

a)在程序运行时进行替换处理。

b)在程序连接时进行处理。

c)和源程序中其它c语句同时进行编译。

d)在对源程序中其它成份正式编译之前进行处理。

14. 设 x、y为整型变量且已赋值,将其中较大的值输出的、正确的 if 语句是 。

a) if ( x >y ) printf ( d ” x

b) if ( x >y ) printf ( d ” x );printf ( d ” y );

c) if ( x >y ) printf ( d ” x );else printf ( d ” y

d) if ( x >y ) printf ( d ” x );else printf ( d ” y );

15. 对以下程序段描述正确的是 。

x=10;while(x) x=x/4;

a) 不执行循环体 b) 循环体执行一次 c) 循环体执行二次 d) 死循环。

16. 在c语言中,引用数组元素时,对数组下标的数据类型以下说法错误的是 。

a) 数组下标可以用整型常量b) 数组下标可以用整型变量

c) 数组下标可以用任意类型的表达式 d) 数组下标可以用整型表达式。

17. 以下c函数的功能是 。

int fun(int x,int y)

int z=0;

z=x>y?x:y;

return z; }

a) 求x 和y二者中的最大值 b) 求x 和y二者中的最小值。

c) 返回一个不确定的值 d) 返回函数值为“0”

18. 定义数组:int s[10];则数组元素下标的取值 。

a) 最小值为1,最大值为10 b) 最小值为0,最大值为10

c) 最小值为0,最大值为9 d) 最小值为1,最大值为9

19. 已知 int i,s[4][5];不能表示数组第3行第3列元素值的是 。

ax) )3b) x [ 3 ] 3 ]

cx + 3 ) 3d) *x [ 3 ] 3 )

20. 以下c函数的类型是。

fun (float f )

printf ( f ” f )

a) int b) float c) void d) 无法确定

21. 设char *s1,s2[255]=“programing” ;以下操作正确的是。

a) *s1 = function”; b) s2=“function”;s1=s2;

c) s1 = function”;s2=s1; d) *s2='p';s1 =s2 ;

22. 设有说明语句:

struct student

int num,age; }

struct student stu[3]=,

struct student *p=stu;

则下面的c语言表达式中,值为6003的是。

a) +p->num) b) (p++)num

c) (p++)num d) (p).num

23. 已有定义 int ( p则指针 p 可以。

a) 代表函数的返回值 b) 指向函数的入口地址。

c) 代表函数的类型d) 代表函数返回值的类型。

24. 若用下列语句输出26个大写英文字母:

1)for(a='a';a<='z';a++)printf("%c",a);

2)for(a='z';a>='a';a--)printf("%c",a);

3)for(a='a';a<='z';)printf("%c",a++)

4)for(a='a';a++

以下说法正确的是 。

a)全都能输出b)只有前三个语句可以输出。

c)只有前两个语句可以输出 d)只有第一个语句可以输出。

25. 设以下程序用来求三个元素的数组中,第1个元素与第3个元素之和(程序每行前面的数字表示行号)。

1 main()

2 ,i;3 for(i=1;i<3;i++)scanf("%d",a[i]);

4 for(i=1;i<3;i++)a[0]=a[0]+a[i+1];

5 printf("%d",a[0]);

则下述说法正确的是 。

a)第2行有语法错误b)第3行有错误,程序得不到预期结果。

c)编译时第4行出现语法错误 d)可以得到正确结果。

一、 程序阅读题 (每小题 3分,共18分)

写出以下程序运行的结果)

#include<>

main()

int a,b,c,d;

unsigned u;

a=12;b=-24;u=10;

c=a+u;d=b+u;

printf("a+u=%d,b+u=%d",c,d);

程序运行结果为:

#include <>

main()

int a=10,b=0;

if (a!=0)

elseprintf(“%d,%d",a,b);

程序运行结果为:

#define v(s) s*s*s

#include <>

main()

程序运行结果为:

#include <>

C语言期末试卷

考试课程 c语言程序设计考试时间 120分钟 本卷共有3道大题 一 单项选择题 40道小题,共45分 1 若已定义x和y为整型变量,且x 7,则表达式y 2.3 x 2的值是 1分 a 6 b 5 c 5.0 d 6.0 2 已知字母a的ascii码为十进制数65,且定义c2为字符型变量,则执行语句...

C语言期末试卷

一 单项选择题。1.c语言源程序文件经过c编译程序编译连接之后生成一个后缀为 c 的文件。a c b obj c exe d bas 2.以下选项中不正确的整型常量是 c a 12l b 10 c 1,900 d 123u 3.表达式 c 的值是0。a 3 5 b 3 5.0 c 3 5 d 3 5...

c语言期末试卷

c语言程序设计试卷 a 出题教师 赵宏考试时间 120分钟。请考生注意 本卷共五道大题,请将第。一 二 三题的正确答案填在答题卡对应的编号上。题号一二三四五总分。得分。一 填空 10分,每题1分 1 一个c语言程序总是从开始执行。2 x 2,y 3,z 3,则表达式x y z y z的值为 3 系统...