文档名称 文档密级
return MEM_OK; }
下面说法正确的是():
A unsigned short 类型不能表示循环体中将16000与50000相加的和66000 B 数组pcsi的number域是unsigned short类型,不能表示50000这么大的数字 C 循环条件应该改为usLoop<=STAT_ITEM_BUTT
30、 设有如下定义: BOOL gstatusA = FALSE; BOOL gstatusB = TRUE; int gvarA = 100;
int gvarB = 100; 则执行main函数后后gvarA和gvarB的值分别为( ) BOOL CheckA() { if(gstatusA) {
gvarA++; } else {
gvarA--; }
return gstatusA; }
BOOL CheckB() {
if(gstatusB) {
gvarB++; } else {
gvarB--; }
return gstatusB;
} int main(int argc, char* argv[]) { if(CheckA() && CheckB() )
{ }
printf(“Status OK”);
11
文档名称 文档密级
return 0; }
A.99和100 B.99和101 C.99和99 D.101和99
31、 请问下面函数中1、2、3应该填入什么语句才合理?( )
A、不添,不添,不添
B、free(pMsg); , free(ptmpMsg);,不添
C、free(pMsg);,free(ptmpMsg);,free(ptmpMsg); D、不添,free(pMsg);,free(ptmpMsg);
E、free(pMsg); ,free(pMsg); ,free(ptmpMsg); F、不添,不添,free(ptmpMsg); #define COMM_MSG_LEN 100 char *get_message_buffer(int malloc_len) {
char *ptr=NULL;
ptr=(char *)malloc(malloc_len) return ptr; }
int func_test(void) {
int malloc_len =COMM_MSG_LEN; char *pMsg=NULL; char *ptmpMsg=NULL;
pMsg=get_message_buffer(malloc_len); if(NULL == pMsg) { }
____1___
return ERROR;
fillMessage(pMsg);
sendMessage(pMsg);
ptmpMsg=get_message_buffer(malloc_len); if(NULL == ptmpMsg) { }
12 ____2___
return ERROR;
}
文档名称 文档密级
fillMessage(ptmpMsg); sendMessage(ptmpMsg); free(pMsg); ____3___ return OK;
32、 请问下面题目中a,b,c输出值为多少?( )
A、10,210,30 B、100,210,300 C、110,210,310 D、100,210,30 E、110,200,30
#include
#define func(A) A++;\\ A *= 10;
int main(int argc, char* argv[]) {
int a = 10; int b=20; int c=30; if(a > 10) func(a); if(b >= 20) func(b); if(c>30)
{
func(c); }
33、 #define MAX_MEM_SIZE 100
int GetMem(int iLen, void **ppMem) {
if(NULL==ppMem) {
return -1;
13 }
printf(\return 0;
}
文档名称 文档密级
if(iLen<=0) {
return 0; }
else if(iLen *ppMem=malloc(iLen); return iLen; } else { *ppMem=malloc(MAX_MEM_SIZE); return MAX_MEM_SIZE; } } void test() { char *pMyMem; int i; int j; i = GetMem(i, (void**)&pMyMem); if(NULL!=pMyMem) { for(j=0; j pMyMem[j]=0; } } } 下面说法正确的有;( ) A、因为pMyMem未初始化,test函数中的GetMem可能会返回-1; B、因为i未初始化,test函数中GetMem可能会返回比MAX_MEM_SIZE大的值; C、因为pMyMem未初始化,for循环内的赋值操作可能会导致写内存异常; D、无论pMyMem, i, j为何值时,test函数内都不会出现写内存异常; 34、 #define MAX_MEM_SIZE 100 int GetMem(int iLen, void **ppMem) { if(iLen<0) 14 文档名称 文档密级 { return -1; } else if(0==iLen) { return 0; } else if(iLen *ppMem=malloc(iLen); return iLen; } else { *ppMem=malloc(MAX_MEM_SIZE); return MAX_MEM_SIZE; } } void test() { char *pMyMem; int i,k; unsigned int j; j=GetMem(i, &pMyMem); if(j>0) { for(k=0; k pMyMem[k]=0; } } } 下面说法正确的有: A、只要将pMyMem初始化为NULL,可以避免test函数内的for循环出现写内存异常; B、虽然i和pMyMem均未初始化,只要将if(j>0)改为if((0 C、虽然i和pMyMem均未初始化,只要将test函数内的for循环比较由k D、上面三种说法都不对。 15 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言编程基础考试试题(3)在线全文阅读。
相关推荐: