《C语言》试卷

发布 2021-04-23 12:18:28 阅读 7173

2024年上学期《c语言》期中试题。

考试得分 9选择题h请选择一个或多个正确选项,2分×20=40分)

1、以下程序的执行结果为___

float fun(int x,int y)

main()

int a=2,b=5,c=8; printf("%0f",fun((int)fun(a+b,c),a-b));

a.-24 b.24 c.-168d.168

2、以下程序运行后的输出结果是___

int f(int x);

main()

int f(int x)

a.1 b.2 c.4 d.8

3.以下程序的运行结果是___

int a=1;

int f(int c)

main()

int i,k=0; for(i=0;i<2;i++)

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

a.13 b.14c.15d.16

4.以下程序的输出结果是___

#define f(x) x*x

void main()

a.9b.18 c.36 d.6

5.以下结构体的定义语句中,正确的是___

student ;stu;

student; struct student stu;

student stu;

student ; student stu;

6.如有定义的枚举类型:enum week_dayeveryday;

则,mon的值为___

a.1b. 2c. 8d. 5

7.有如下定义的结构体类型:

struct data workday;

对其中成员month的正确引用方式是___

8.有如下的说明:union test test1;

在vc环境下int占4个字节,char占1个字节,则sizeof(union test) 的结果是___

a.4b.2c.5d.3

9.变量的指针,其含义是指该变量的___

a.值b.地址 c.名 d.一个标志。

10.下面能正确进行字符串赋值操作的是___

s[5]=;

*s; s=" s; scanf("%s",&s);

11.设有定义:char *c;,以下选项中能够使字符型指针c正确指向一个字符串的是___

str=string" ;c="%s",c

string";

12.下列语句中,正确的是___

*s;s=" s[7];s="olympic";

*s;s=;

13.已有定义int k=2; int *p1,*p2; 且p1和p2均已指向变量k,下面不能正确执行的赋值语句是___

14.若有定义:double a[10],*s=a;,以下能够代表数组元素a[3]的是___

a.(*s)[3b.*(s+3c.*s[3d.*s+3

15.若有定义int a[5],*p=a;,则对a数组元素的正确引用是___

a.*&a[ c.*(p+5) d.*(a+2)

16.设有定义语句:int m=k=m;,以下选项中表达式的值为6的是___

a.*(k+

17.程序段char *s="abcde"; s+=2; printf("%d",s);的运行结果是___

字符'c' c.字符'c'的地址 d.无确定的输出结果。

18.下面程序段的运行结果是___

char str=abc", p=str; printf("%d",*p+3));

a.67 b.0 c.字符'c'的地址 d.字符'c'

19.下面程序段的运行结果是___

char a=language", p; p=a;

while(*p!='u')

20.若有定义char s[10]; 则在下面表达式中不表示s[1]的地址的是___

二、判断题( 2分×10=20分)

21、如果某个函数在定义时省略了存储类型,则默认的存储类型是int。(

22、函数中的多个return语句,可以实现调用该函数后,多个值同时被返回。

23、在c语言中,除了main()函数外,其余所有的函数都能够被调用。

24、结构体变量所占用空间是全部成员占用空间之和。

25、共用体可以作为结构体的成员,但结构体不能作为共用体的成员。

26、结构体中各个成员的数据类型必须是相同的。

27、typedef的作用是给数据类型取一个别名。

28、运算符“*”有时是单目运算符,有时又可能是双目运算符。

29、 取地址运算符“&”与指针运算符“*”的优先级相同,结合方向为自右向左。

30、函数rewind()的作用是位置指针返回移动前的位置。

三、程序分析题(本大题共3小题,共90分)

31、阅读程序,写出运行结果。(第空5分,共25分)

1)下列程序的运行结果是。

#include <>

int fun()

static int x=1;x*=2;return x;}

main()

int i,s=1;for(i=1;i<=4;i++)s*=fun();printf(“%d”,s);}

2) 下列程序的运行结果是。

#include <>

main()

struct a

int x;int y;

num[2]=,

printf("%d",num[0].x/num[0].y*num[1].y);

3) 下列程序的运行结果是。

void fun(int *p)

main()

int a[10]=;

fun(&a[3]);

4) 下列程序的运行结果是。

main()

file *fp; int i=20,j=30,k,n;fp=fopen(""w");

fprintf(fp,"%d",i);fprintf(fp,"%d",j);fclose(fp);

fp=fopen(""r");fscanf(fp,"%d%d",&k,&n);printf("%d %d",k,n);fclose(fp);

5) 下列程序的运行结果是。

c语言试卷c

a.p q c.p n1 10 若有说明语句 int a,b,c,d c 则能从键盘读入三个整数分别赋给变量a b c的语句是。a.scanf d d d a,b,d b.scanf d d d a,b,d c.scanf d d d a,b,dd.scanf d d d a,b,d 11 c语言标...

C语言试卷A

青海大学试卷 a卷 系别 班级学号姓名。考试课程 程序设计基础 c 考试日期 2009 年 12月17日。注 所有答案均写在答题卡上,答在试卷上不得分,考试结束后试卷和答题卡一并交回。一 填空题 每空1分,共16分 1 整型静态数组没有初始化,也没有赋值,此时数组元素的值均为 0 2 数组在内存中占...

C语言试卷

一 填空共5题 共计10分 第1题 2.0分 题号 339 赋值运算符的结合性是由 右 至 左 第2题 2.0分 题号 925 在c 语言结构化程序中,函数 是程序的基本组成单元 在c 语言的面向对象设计框架中,对象 是程序的基本组成单元。第3题 2.0分 题号 926 c 语言的参数传递机制包括传...