A 一定连续
B 一定不连续
C 不一定连续
D 部分连续,部分不连续
2. 执行完下列语句段后,i 值为() int f(int x){ return ((x>0)?x*f(x-1):2) } int i; i=f(f(2));A 4
B 48
C 8
D 无限递归
3. C++中关于函数不正确的是( )A 函数调用语句必须写在函数定义的前面
B 函数可以没有返回值
C 函数声明就是原型声明
D 不允许嵌套定义
4. 对于int *pa[5]; 的描述,( )是正确的。A pa是一个具有5个元素的指针数组,每个元素是一个int类型的指针;
B pa[5]表示某个数组的第5个元素的值;
C pa是一个指向数组的指针,所指向的数组是5个int类型的元素;
D 33.pa是一个指向某个数组中第5个元素的指针,该元素是int类型的变量;
5. 请问下面程序的输出是( ) #include < stdio.h > int main() { int i = 0; printf(“%d, “,i); printf(“%d, “,i++); printf(“%d, “,i--); printf(“%d, “,--i); printf(“%d”,++i); return 0; }A 0,0,1,-1,0
B 0,1,0,-1,0
C 0,0,0,-1,0
D 0,1,1,0,1
6. 在一个64位的操作系统中定义如下结构体: struct st_task { uint16_t id; uint32_t value; uint64_t timestamp; }; 同时定义fool函数如下: void fool() { st_task task = {}; uint64_t a=0x00010001; memcpy(&task, &a, sizeof(uint64_t)); printf( “%11u,%11u,%11u” , task.id, task.value, task.timestamp); } 上述fool()程序的执行结果为( )A 1, 0, 0
B 1, 1, 0
C 0, 1, 1
D 0, 0, 1
7. int fun(int a) { a ^= (1<<5)-1; return a; } Fun(21),结果是( )A 10
B 8
C 5
D 3
8. 如下代码输出结果是什么( ) #include < stdio.h > char *myString() { char buffer[6]= {0}; char *s = “Hello World!”; for(int i = 0; i< (sizeof(buffer)-1);i++) { buffer[i] = *(s+i); } return buffer; } int main(int argc, char** argv) { printf( “%s\n” , myString()); return 0; }A Hello
B Hello World!
C Hell
D 以上全都不正确
9. struct Date { char a; int b; int64_t c; char d; }; Date data[2][10]; 如果Data的地址是x,那么data[1][5].c的地址是( )A X + 195
B X + 365
C X + 368
D X + 245
10. 以下为一段c特性验证代码,请问最后一个输出的nInnerVal的值应该为( ) int main(int argc, char *argv[]) { int nVal = 0; switch(nVal) { int nInnerVar = 1; case 0: nInnerVar ++; printf(“nInnerVal:%d\n”,nInnerVar); case 2: nInnerVar ++; printf(“nInnerVal:%d\n”,nInnerVar); default: nInnerVar ++; printf(“nInnerVal:%d\n”,nInnerVar); } return 0; }A 1
B 2
C 3
D 4
E 其它
获取答案和解析请阅读全文
未经允许不得转载!程序设计题 【含答案和解析】