2019程序设计C试卷

发布 2021-04-24 20:21:28 阅读 3651

1. 以下所列的c语言常量中,错误的是。

a) 0xffb) 1.2e0.8c)”fedsadad) '72'

2. 在下列标识符中,能用作用户自定义标识符的是( )

a. 5ab b. static d. struct

3. 设x为整数,c中能正确地表达数学式0≤x<5的是。

a. 0<=x<5b. x=0||x=1|| x=2||x=3||x=4

c. x>=0||x<5 d. !x<0||x>=5)

4. 执行下列程序后,x的值为。

x = 3; 9 + 3 - 2, x = x * 5, y = 23, x++;

a. 10 b. 15 c. 16 d. 23

4. int i = 5; float x; 执行x = 8 / i; 后x的值为。

a. 1.6 b. 1 c. 1.0 d. 2.0

5. 下列关于表达式的书写中正确的是。

a. 4 * 2.5 % 3 b. x = y + z = 4

c. +y *=z + 3

6. 设有说明“int x=5,y=7,z=8;”,执行表达式z+=x++|y++|z后,则x,y,z的值分别是。

a b c d

7. 若int x=2, y=3, z=7;则表达式y-z? x+y:x*y的值为。

a. 5b. 1 c. -4 d. 6

8. 设e1和e3是表达式,与语句for(e1; ;e3) s;等同的语句是。

a. for(e1;e1;e3)s; b. for(e1;e3;e3)s;

c. for(e1;0;e3)s; d. for(e1;1;e3)s;

9. a,b已经定义为int类型,则以下程序段中循环体总的执行次数是。

for(a = 8; a ; a=a-2)

for(b = 0;b < 3;j++)

a. 12 b. 15 c. 16 d. 8

10. 设有语句:char s[ ]xy\0\1237”; 则 strlen(s)的值是( )

a. 2 b.6 c. 7 d. 3

11.数组作为函数的形参时,把数组名作为实参,传递给函数的是( )

a.数组的首地址b.数组的元素个数

c.数组中的各元素值 d.数组的大小

12.下列说明或赋值语句,不正确的是( )

a. char p[12];p[0] =v’;

b. char p[12]; p=”visual c++”

c. char p[12] =

d. char p[ ]visual”;

13. 判断字符串s1是否大于s2,应当使用。

a.if(a >bb.if(a> =b)

c.if( strcmp(s1,s2) >0 ) d.if( strcmp(s1,s2)< 0 )

14.设int x=10,* p=&x;,则*p的值是。

a. 变量x的地址值 b. 无意义 c. 变量p的地址值 d. 10

15.若p为指针变量,y为变量,则y = p++;的含义是。

a.y = p; p++ b.y = p)++

c.y = p; pd.p++;y = p

16.若int x[3][4],(p)[4] =a;则下列表示a[2][3]数组元素的方法中,( 是正确的。

a. (p + 2) +3b. *p + 2) +3)

c. *p + 11d. *p[2][3]

17. 设void f1(int *a,char * b);int x;char s[ ]123”;以下调用合法的是( )

a.f1(&x,&s); b.f1(&x,s); c.f1(x,s); d.f1(x,&s);

18.结构体类型的变量在程序执行期间( )

a. 所有成员一直驻留在内存中。

b. 只有一个成员驻留在内存中。

c. 部分成员驻留在内存中

d. 没有成员驻留在内存中。

19. 若有说明int (*p)[3], 则以下是正确的描述。

a. p是一个指针数组。

b. p是一个指针,它只可能指向一个包含3个int类型元素的数组。

c. p是一个指针,它可以指向一个一维数组中的任意一个元素。

d. (p)[3]与*p[3]等价。

20. 设有程序段如下:int x; int a[10]; 则下列表达式中,与元素a[x]等效的是( )

a. a + x b. *a + x c. *a + x) d. a + x

二、阅读程序题(共20分,每空2分,将正确的答案填入横线内)

1. /考察分支。

#include <>

void main()

int i=17;

while(i>0)

printf("%d",i);

程序输出的第一行是第三行是。

2. /考察循环。

#include<>

void main(void)

int y=122,a[8],i,j;

for (i=0;y;i++)

for (j=i-1;j>=0;j-- printf("%d\t",a[j]);

printf("");

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

程序输出的第一行是第二行是。

3. /考察递归。

#include<>

void fun(int*p, int i)

printf("%d\t",p[i+1]);

if( i<6 ) fun( p, i+3);

void main(void)

int a[10]=;

fun( a, 0);

程序的输出结果是。

4.//考察字符串。

#include <>

#include <>

void main(void)

char str[50]="xyz", p1[20]="abcd",p2[ ]abcd";

strcpy(str+2, strcat( p1+2, p2+1) )

puts(str);

程序运行结果是。

5.//考察静态变量。

#include <>

int f1()

static int i=10,f=2;

return f*=+i;

void main()

printf("%d",f1()-f1())

程序第一行是。

#include <>

int f1(int *p,int n)

int count=0;

int i,sum=0,**e;

for(i=0;i

p=p-n;

**e=sum/n;

for(i=0;i

return count;

int f2(int *p,int n)

int i,value=0;

p=p+4*n;

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

value+=p[i];

return value;

void main()

int x[10]=;

int y[3][4]=;

int (*fun)(int *,int);

int i;

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

if(i==1)

fun=f2; printf("%d\t",fun(*y,1));

程序的输出结果为。

三、完善程序(20分,每空2分)

1.判断范围在[m..n]间的所有素数(5int prime(int a) /返回值1为素数,否则为0

int k;

for(k=2;k if(a%k==0)return 0;

C程序设计试卷1C程序设计

c 程序设计试卷。一 选择题。每小题3分,共15分 1 派生类能够直接访问的基类的成员是 a 公有成员 b 保护成员 c 私有成员 d 静态。2 下面是几条定义类的语句,不能被继承的类是 a abstract class figure b class figure c public class fi...

C 程序设计试卷C

面向对象的程序设计c 试卷c 一 填空 每空2分,共20分 1 定义于函数外的变量称为。2 假定class1为一个类,则执行 class1 a 5 b 2 p 3 语句时,自动调用该类构造函数的次数为。3 利用操作符 语句序列p p 1 f p 5 的功能可以由一个语句完成。4 不借助于其他变量交换...

C 程序设计试卷 A

c 程序设计课程期末考试试题 a卷 一判断题 正确打 a 错误打 b 每小题1分,共计20分 1在面向对象的编程中,和数据合并为一个不可分割的对象。2对象是有确定简介且与要处理的问题相关的概念或事物。3每个对象都称为它的类的一个示例。类中的对象具有相同的属性和共同的行为。4多态性是指相同的函数可以在...