2020年秋学期C语言程序设计第3次作业
总分:100 分
单选题多选题判断题问答题
一、单选题 (共10题,共30分)
得分:30分
1、
假定有语句为“int *p=calloc(n+1,sizeof(int));”,则p所指向的动态数组中所包含的元素个数为( )。
A :
n-1
B :
n+1
C :
4*n
D :
n
得分:3分
本题分值:3分
回答正确
您的答案: B
2、
假定a为一个数组名,则元素a[i]的指针访问方式为( )。
A :
&a+i
B :
a+i
C :
*(a+i)
D :
*a+i
得分:3分
本题分值:3分
回答正确
您的答案: C
3、
假定指针变量p的定义语句为“int *p=malloc(sizeof(int));”,要释放p所指向的动态存储空间,应调用的函数为( )。
A :
free(*p)
B :
delete(p)
C :
free(p)
D :
free(&p)
得分:3分
本题分值:3分
回答正确
您的答案: C
4、
假定有一条定义语句为“int m=7, *p;”,则给p赋值的正确表达式为( )。
A :
*p=&m
B :
p=&m
C :
p=*m
D :
p=m
得分:3分
本题分值:3分
回答正确
您的答案: B
5、
假定p是一个指向double类型的数据指针,则p+1所指向的数据的地址比p所指向的数据的地址大( )个字节。
A :
1
B :
8
C :
4
D :
2
得分:3分
本题分值:3分
回答正确
您的答案: C
6、
假定整数指针p所指数据单元的值为30,p+1所指数据单元的值为40,则执行*p++后,p所指数据单元的值为( )。
A :
70
B :
10
C :
40
D :
30
得分:3分
本题分值:3分
回答正确
您的答案:
7、
假定有定义“int b[10], *pb;”,则不正确的赋值为( )。
A :
pb=&b[0]
B :
pb=b[5]
C :
pb=b+4
D :
pb=b
得分:3分
本题分值:3分
回答正确
您的答案:
8、
假定有定义为“int a[10], x, *pa=a;”,若要把数组a中下标为3的元素值赋给x,则不正确的赋值为( )。
A :
x=pa[3]
B :
x=*pa+3
C :
x=*(a+3)
D :
x=a[3]
得分:3分
一个完整的c语言程序本题分值:3分
回答正确
您的答案:
9、
假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p指向s所指向的字符串,则p应定义为( )。
A :
char *p; p=&s;
B :
char *p;p=*s;
C :
char *p=&s;
D :
char *p=s;
得分:3分
本题分值:3分
回答正确
您的答案:
10、
假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。
A :
p->next=f和f=p
B :
f->next=p和f=p
C :
p->next=f
D :
f=p->next
得分:3分
本题分值:3分
回答正确
您的答案:
二、多选题 (共5题,共25分)
得分:25分
1、
这段程序中的常量有:#define PI 3.14 ;void main(){ int sum;sum = 10 + 15;printf("sum=%d",sum);printf("result is 25");}这段程序中常量有( )。
A :
10
B :
sum
C
:
15
D :
PI
得分:5分
本题分值:5分
回答正确
2、
以下叙述中正确的是().
A :
一个C源程序可由一个或多个函数组成
B :
一个C源程序必须包含一个main()函数
C :
C源程序的基本组成单位是函数
D :
在C源程序中,注释说明只能位于一条语句的最后
得分:5分
本题分值:5分
回答正确
3、
以下合法的十六进制数是().
A :
oxff
B :
0Xabc
C :
0x01
D :
0X9X
得分:5分
本题分值:5分
回答正确
4、
若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是().
A :
a=b=c=d=100;
B :
d++;
C :
c+b;
D :
d=(c=22)-(b++);
得分:5分
本题分值:5分
回答正确
5、
以下选项中不是C语言合法整数的是().
A :
10110
B :
0386
C :
0Xffa
D :
x2a2
得分:5分
本题分值:5分
回答正确
三、判断题 (共5题,共15分)
得分:15分
1、
访问一个链表时,必须从表头指针出发,依次访问每个结点。
A
:
对
B
:
错
得分:3分
本题分值:3分
回答正确
您的答案:
2、
在一个链表中,表尾结点指针域的值为空(NULL)。
A
:
对
B
:
错
得分:3分
本题分值:3分
回答正确
您的答案:
3、
假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i个字节。
A
:
对
B
:
错
得分:3分
本题分值:3分
回答正确
您的答案:
4、
已知“int a[10], *p=a;”,则进行*p++运算是不允许的。
A
:
对
B
:
错
得分:3分
本题分值:3分
回答正确
您的答案:
5、
在语句“typedef int* inPointer;”中,把标识符inPointer定义为int*类型。
A
:
对
B
:
错
得分:3分
本题分值:3分
回答正确
您的答案:
四、问答题 (共2题,共30分)
待批阅
1、
补充完整下面的函数定义,要求返回二维数组a[m][n]中所有元素的平均值。假定在计算过程中采用变量s存放累加值,采用i和j作为扫描数组的循环变量。 double Mean(double a[][N],int m,int n) { int i,j; double s=0.0; //在下面添上合适的for双重循环语句 return s/(m*n); }
本题分值:15分
教师评价:
2、
根据函数原型“int FF(int a[], int n)”,编写函数定义,计算并返回数组a[n]中所有元素之和。
本题分值:15分
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论