C语言程序设计作业三.doc
文本预览下载声明
一、???????????? 选择题
1.?????? 在下面的(C)函数声明语句存在语法错误。
A.AA(int a,int b);???? B.AA(int ,int)???? C.AA(int a;int b)?????? D.AA(int a,int)
2.在下面的(C)不能作为函数的返回类型。
A.void ?????B.int???? C.new????? D.long
3.下面正确的函数原型语句是(B)。
A.int Function(void a);???? B.void Function(int);
C.int Function(a);? ???????D.void int(double a);
4.函数调用func(exp1,exp2),exp3*exp4-exp5)中所含实参的个数为(B)个。
A.1???? B.2???? C.4?????? D.5
5.下面的标识符中,(C)是文件级作用域。
A.函数形参???? B.语句标号???? C.外部静态类标识符??? D.自动类标识符
6.下面的标识符中,(B)具有全局级作用域。
A.函数形参???? B.全局变量???? C.内部静态类标识符??? D.自动变量符
7.假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大( C )字节。
A.1???? B.2???? C.4?????? D.8
8.假定a为一个字符数组名,则a[8]的地址比该数组的首地址大( B )个字节。
A.4???? B.8???? C.16?????? D.32
9.假定a为一个数组名,则下面的( B )表示有错误。
A.a[i]???? B.*a++???? C.*a?????? D.*(a+1)
10.用calloc函数创建具有10个整型元素的一维数组的正确语句是( C? )。
A.int *p=calloc(10,2);???????? B.int *p=callo(10;
C.int *p=calloc(10,4);???????? D.int *p=malloc(10);
11.假定变量m定义为“int m=7;”,则定义p的正确语句为( B )。
A.int p=m;???? B.int *p=m;???? C.int p=*m;?????? D.int *p=m;
???
13.假定一条定义语句为“int a[10],x,*pa=a;”,若要把数组a中下标为3的元素赋值给x,则不正确的语句为(? D? )。
A.x=pa[3];???? B.x=*(a+3);???? C.a=a[3];?????? D.x=*pa+3;
14.假定有定义“int b[10];int *pb;”,则不正确的赋值语句为(? C? )。
A.pb=b;???? B.pb=b[0];???? C.pb=b+2;?????? D.pb=b[5];
15.假定指针变量p定义为“int *p=new int(100);”,要释放p所指向的动态内存,应使用语句( D ?)。
A.delete[p];???? B.delete *p;???? C.delete p;?????? D.delete []p;
16.假定指针变量p定义为“int *p=calloc(30,sizeof(int));”,要释放p所指向的动态内存,应使用语句( D ?)。
A.delete[p];???? B.deldete(p);???? C.free[]p;?????? D.free(p);
?
?
?
?
?
?
二、填空题
1.在C语言中,一个函数由函数头和___函数体_______组成。
2.在函数外定义的变量称为全局变量,若没有被初始化则系统隐含对它所赋的初值为___0______。
3.如果一个函数只允许同一程序文件中的函数调用,则应在访函数定义前加上的C保留字为为___static______。
4.如果一个函数直接或间接地调用自身,这样的调用被称为__递归_____调用。
5.调用系统函数时,要先使用#include命令包含该函数的原型语句所在__头___文件。
6.函数形参的作用域是该函数的__内部___。
7.假定p所指对象的值为25,p+1所指对象的值为46,则*p++的值为__25______。
8.假定p所指对象的值为25,p+1所指对象的值为46,则*++p的值为__46______。
9.假定p所指对象的值为25,p+1所指对象的值为46,则执行“*(p++);”语句后,p所指对象的值为__46______。
10.假定a是一个指针数组,则a+1所指对象的地址比a地址大__4___字节。
11.若要把一个整型指针p转换为字符指针,则采用的强制转换表达式为___(
显示全部