套题4---C语言程序设计---答案

.

试 题 四

参考答案与评分标准

一、判断对错(6分,每题1分,对:√,错:×) 1.在C语言中,可以用typedef定义一种新的类型。( ) 2.C语言中基本数据类型包括整型、实型、字符型。( ) 3.不同的函数中可以使用相同的变量名。() 4.形式参数是局部变量。( )

5.若有定义int *p[4];则标识符p是一个指向有四个整型元素的一维数组的指针变量。( )

6. 共用体所占的内存空间大小取决于占空间最多的那个成员变量。( ) 二、单项选择题:(10分,每题2分)

1.判断字符串s1与字符串s2相等,应当使用: 。

A) if (s1 = s2) B) if (strcmp(s1, s2))

√C) if (!strcmp(s1, s2)) D) if (strcmp(s1, s2) = 0)

2.二维数组a有m行n列,则在a[i][j]之前的元素个数为( )。

A. j*n+i √B. i*n+j C. i*n+j-1 D. i*n+j+1 3.

#include

#include main() {

printf(\}

则程序运行后的输出结果是 。

√A) 10 B) 11 C) 16 D) 12 4.有如下程序片段:

int i = 0; while(i++ <= 2); printf(\

则正确的执行结果是:

A) 2 B) 3 √C) 4 D) 程序陷入死循环 5. 下面哪个定义是合法的 。

A) char a[8] = \B) int a[5] = {0,1,2,3,4,5};

.

班级: 学号: 姓名: √C) char *a = \

D) int a[2][] = {0,1,2,3,4,5,6}; 三、

1.

#include main( ) { int a = 5, b = 4, x, y; x = 2 * a++ ; printf(\ y = --b * 2 ; printf(\}

则程序运行结果是: a=6, x=10 b=3, y=6

2.

#include void fun1(int x) {

x=20; }

void fun2(int b[4]) {

int j;

for(j=0; j<4; j++) {

b[j]=j; } }

main() {

int x = 10;

int a[4] = {1,2,3,4}, k;

fun1(x);

printf(\ fun2(a);

for(k=0; k<4; k++) {

printf(\ } }

运行结果是:

2 班级: 学号: 姓名: x = 10 0 1 2 3

3.

#include main() { int x, y; scanf(\ printf(\}

程序运行时输入:123456789↙ 则程序运行结果是:66

4.

#include struct date {

int year; int month; int day; };

void func(struct date p) {

p.year = 2000; p.month = 5; p.day = 22; }

main() {

struct date d; d.year = 1999; d.month = 4; d.day = 23;

printf(\ func(d);

printf(\}

程序运行结果为: 1999,4,23 1999,4,23

5.

#include void Fun(int *y)

3

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4