第七周函数

小测验7

1、单选题:
以下哪句不是正确的原型?
选项:
A: int f();
B: int f(int i);
C: int f(int);
D: int f(int i) {}
答案: 【 int f(int i) {}

2、单选题:
以下哪个函数的定义是错误的?
选项:
A: void f() {}
B: void f(int i) { return i+1; }
C: void f(int i) {}
D: int f() { return 0; }
答案: 【 void f(int i) { return i+1; }

3、多选题:
对于不返回值而且只有一个int类型的参数的函数,以下哪些函数原型是正确的?
选项:
A: void f(int x);
B: void f();
C: void f(int);
D: void f(x);
答案: 【 void f(int x);;
void f();;
void f(int);

4、填空题:
以下程序的输出是什么?#include <stdio.h>void swap(int a, int b);int main(){ int a = 5; int b = 6; swap(a,b); printf("%d-%dn", a, b); return 0;}void swap(int a, int b){ int t = a; a = b; b = t;}
答案: 【 5-6

第九周指针

小测验9.1

1、单选题:
‏对于:‍int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
int *p = &a[5];‏则:‍‏p[-2]的值是?‍‏‍
选项:
A: 编译出错,因为数组下标越界了
B: 运行出错,因为数组下标越界了
C: 54
D: 2
答案: 【 54

2、多选题:
‌如果:​int a[] = {0};
int *p = a;‌则以下哪些表达式的结果为真?​
选项:
A: p == a[0]
B: p == &a[0]
C: *p == a[0]
D: p[0] == a[0]
答案: 【 p == &a[0];
*p == a[0];
p[0] == a[0]

3、判断题:
‏以下变量定义:‍‏int* p,q;‍‏中,p和q都是指针。‍
选项:
A: 正确
B: 错误
答案: 【 错误

4、填空题:
‌对于:​int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
int *p = &a[1];‌则:​‌p[2]的值是?​
答案: 【 54

小测验9.2

1、单选题:
‎对于以下代码段,正确的说法是:‌char *p;
while (1) {
    p = malloc(1);
    *p = 0;
}‎‌
选项:
A: 最终程序会因为没有没有空间了而退出
B: 最终程序会因为向0地址写入而退出
C: 程序会一直运行下去
D: 程序不能被编译
答案: 【 最终程序会因为向0地址写入而退出

2、单选题:
​对于以下代码段:​int a[] = {1,2,3,4,5,};
int *p = a;
int *q = &a[5];
printf("%d", q-p);​当sizeof(int)为4时,以下说法正确的是:​
选项:
A: 因为第三行的错误不能编译
B: 因为第三行的错误运行时崩溃
C: 输出5
D: 输出20
答案: 【 输出5

3、判断题:
‎使用malloc就可以做出运行时可以随时改变大小的数组​
选项:
A: 正确
B: 错误
答案: 【 错误

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注