C语言测试题

一、判断题(对的写T,错的写F并说明原因)

1. 有数组定义int a[2][2]={{1},{2,3}}; 则a[0][1]的值为0。( )

2. int(*ptr)(),则ptr是一维数组的名字。( )

3. 指针在任何情况下都可以进行>,<.>=,<=,==运算。( )

4. switch(c)语句中c可以是int,long,char,float,unsigned int类型。( )

5. #define print(x) printf(“the no,” #x”,is”) ( )

二、填空题

1. 在Windows下,写出运行结果

char str[] = “Hello”;

char *p=str;

int n = 0;

sizeof(str)=( )

sizeof(p)=( )

sizeof(n)=( )

void func(char str[100]){ }

sizeof(str)=( )

2. void setmemory(char **p, int num)

{

*p = (char*)malloc(num);

}

void test(void)

{

char *str = NULL;

setmemeory(&str, 100);

strcpy(str, "hello");

printf(str);

}

运行test函数有什么结果?

3. 设 int arr[] = {6, 7, 8, 9, 10};

int *ptr = arr;

*(ptr++) += 123;

printf("%d,%d", *ptr,*(++ptr));

输出结果?

三、编程题

转自:http://www.ewdoc.com/article/2917.html

你可能感兴趣的:(C语言,c,c语言,试题)