C语言程序设计期末考试A卷 定稿

发布 2021-04-21 12:22:28 阅读 2160

2013 — 2014 学年第二学期。

2013 年级计算机科学与技术、信息管理与信息系统专业。

本科层次《c语言程序设计》试题a卷。

课程** 0710082 考试方式闭卷考试时长 110 分钟。

一、选择题(共15题,每题2分,共30分)

1、若有以下语句,描述正确的是 (

char x

char y 12345”;

a.x数组和y数组的长度相同 b.x数组的长度大于y数组的长度。

c.x数组的长度小于y数组的长度 d.x数组等价于y数组。

2、对一维数组定义正确的是( )

a. int a(4b. int n=8,a[n];

c. int m; scanf(“%d”,&m); int a[m]; d. #define len 13 int a[len];

3、以下程序的输出结果是( )

main()

int i=2,p;

p=f( i, i-- printf(“%d”,p);

int f(int a, int b)

int c=a;

if(a>b) c=1;

else if(a= =b) c=0;

else c= -1;

return(c);

a.-1 b. 0 c.1 d.2

4、下列关于指针描述中,错误的是 (

a.指针的类型是它所指向的变量的类型

b.指针在内存中占据内存空间

c.指针可以指向一个函数。

d.指针占内存空间的大小与它的类型无关。

5、设已经定义数组float a[10],首地址为1012,则a[7]的地址为 (

a. 1019; b. 1040; c. 1026; d. 1036;

6、若int(*p)[5];其中p的含义是 (

a. 5个指向整型变量的指针

b. 指向5个整型变量的函数指针

c. 一个指向具有5个整型元素的一维数组的指针。

d. 具有5个指针元素的指针数组名,每个元素都指向整型变量。

7、已知:char a abcde”,*p=a;则表达式*(p+5)的值是( )

a. ‘e’; b.‘\0’; c. null; d. 不确定;

8、若有以下定义,则不能表示a数组元素的表达式是 (

int a[10]=,p=a;

a. *p b. a[p-a] c. *a d. a[10]

9、设有以下语句int x,*p=&x;则下列表达式中错误的是 (

a.*&x b. *pc. &x d. &p

10、执行下面程序段后,*p等于 (

int a[5]=,p=a; p++;

a.1b.3c.5d.7

11、以下叙述中正确的是( )

struct ss,*p=a;下列对数组元素地址的引用中正确的是 (

a.&(a+1) b.&(p+2) c.pd.*(p+1)

14、已知int a[3][4], p=a;下列表示数组元素a[1][0]的地址是 (

a.*(p+1) b. *a+1) c. p+1d. &a[2]

15、下列关于int *p[3];其中p的描述错误的是 (

a.p是一个指向一维数组的指针。

b.p是一个指针数组名

c.名为p的数组是一个一维指针数组。

d.数组p中的每个元素是指向int型变量的指针。

二、填空题(共10题,每空2分,共20分)

1、 结构体类型定义如图所示:

struct node

int data;

struct node *link图2-1

p,q,s;

在两个节点p、q之间插入新的节点s(p、q和s均为struct node类型的结构体变量),请写出插入节点s的语句。

2、函数调用中,简单变量作为实参时,传递给形参的是数组名作为实参时,传递给形参的是。

3是指函数功能的确立,包括指定函数名、函数值类型、形参及其类型、函数体等,它是一个完整的、独立的函数单位;而则是把函数的名字、函数类型以及形参的类型、个数和顺序通知编译系统。

4、变量的存储类别从作用域(空间)的角度分为和。

5、已经有以下定义:

struct node

int data;

struct node *next;

*p;以下调用malloc函数,使指针p指向一个具有struct node类型的动态存储空间。请填空:p=(struct node *)malloc

6、设有以下定义:

struct node

int data;

struct node *link;

x,y,z;

已建立如下所示的链表结构:

xyz请写出删除y节点的语句。

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

1、 指针和一般变量一样都有两个值,一个是它在内存中的地址值,另一个是它所存放的数据值。 (

2、宏名的定义必须用大写字母。

3、宏定义是c语句,不必在行末加分号。

4、函数调用是在程序运行时处理的,为形参分配临时的内存单元;宏展开则是在编译前进行的,展开时分配内存单元,但不进行值的传递。

5、两个指针可以相减,如果两个指针变量指向同一个数组中的元素,它们的差是两个指针之间的元素个数。 (

6、int (*p)( int,int);p为指向函数的指针,该函数返回一个地址。

7、用指针作为函数参数时,采用的是“地址传递”方式。

8、通过变量名或地址访问一个变量的方式称为“直接访问”方式。

9、语句y=*p++;和y=(*p)++是等价的。

10、int *p( )p是返回一个指针的函数,该指针指向整型数据。

四、读程序并填空(共4题,每空2分,共10分)

1、输出链表的函数print

#include <>

void print(struct student *head)

struct student *p;

printf("now,these %d records are:",n);

if(head!=null)

dowhile(p!=null);

2、指向结构变量的指针的应用。

#include <>

#include <>

main()

struct student

struct student stu, *p;

p=&stu;

10001对结构体变量赋值。

ma lin");

printf("no.:%ldname:%s ",p).id,(*p).name

3、返回指针值的函数的应用,输出若干个学生的成绩。

C语言程序设计期末考试样卷

2008年c语言程序设计期末考试样卷。一 填空题。1 c语言程序从函数开始执行。2 关系运算的结果得一个整数值 或者。3 已知int a 则它的最大下标是。4 结构化程序的3种基本结构是和。5 若a1和a2都是double型变量,且a1的初值为3.0,a2的初值为2.0,则表达式pow a2,fab...

C语言程序设计期末考试说明

c语言程序设计 期末考试说明。1.所有c语言程序设计内容全部列为考试内容,但类似于栈 链表等数据结构方面的内容及排序 查找等算法本身不列入考试内容,同时问题求解本身也不列为考试内容,但考试中可能会涉及问题求解 排序 查找等算法,此时会以流程图或伪 的形式给出问题求解过程或算法的描述,请同学们一定要熟...

C语言程序设计期末考试试题

一 单项选择题 30分 1.下列不属于算法应该具有的特性是 a.确定性 b.有穷性 c.可行性 d.有零个或者多个输入。2.以下不正确c语言标识符是 b.abc c.bc 3.计算机能直接执行的程序是 a.源程序 b.目标程序 c.汇编程序 d.可执行程序。4.以下运算符优先级最高的是 a.b.c....