正确答案是:
n(n+1)/2
题目9若n的值为10,则执行“while(n-->0)
s+=n;”语句的过程中,循环体被执行的次数为()。
正确答案是:
10
题目10若n的值为5,s的值为0,则执行“while(n-->0)s+=n;10
语”句后,s的值为()。
正确答案是:
题目11在下列的语句中,必须以分号作为结束的语句是()。
正确答案是:
do
题目12若n的值为5,s的值为0,则执行“dos+=-n-;while(n>0);语”句后,s的值为(正确答案是:
15
题目13
要结束任一种循环语句或switch语句的执行,则在其中使用的语句为()。
正确答案是:
break
二、判断题
在if语句中,必须带有else子句,不能省略它。
正确的答案是“错”。
题目15
在for循环语句的头部,for后面括号内共有3个表达式位置。
正确的答案是“对”。
题目16for循环语句不能够被转换为while循环语句。
正确的答案是“错”。
题目17while循环语句中的循环体可能不会被执行。
正确的答案是“对”。
题目18while循环语句的循环体,只能是复合语句,不能是简单语句。
正确的答案是“错”。
题目19do-while循环语句中的循环体可能不会被执行。
正确的答案是“错”。
题目20do-while循环语句的循环体,只能是复合语句,不能是简单语句。
正确的答案是“错”。
题目21do-while循环语句是以循环体结尾的。
正确的答案是“错”
break语句可以使用在switch语句中。
正确的答案是“对”。
题目23return语句中可以带有返回表达式。
正确的答案是“对”。
题目24continue只能使用在任一种循环语句的循环体中。
正确的答案是“对”。
一、单项选择题
题目1假定有一个元素类型为int的数组a[10],它所占用的存储空间的字节数为()。
正确答案是:
40
题目2
假定一维数组的定义为“char*a[8];,则”该数组所占用的存储空间的字节数为()。
正确答案是:
32
题目3假定有一个定义语句为“inta[10]={3,4,2,8,6};,则元”素a[5]的值为()正确答案是:
0
题目4在下面的一维数组定义语句中,有语法错误的是()。
正确答案是:
inta[];
题目5假定二维数组的定义语句为“inta[3][5];,则”该数组所含元素的个数为()。
正确答案是:
15
题目6假定有一个定义语句为“inta[3][4]={{3,4},{2,8,6}};6
题目7
,则元素”
a[1][2]的值为()。
正确答案是:
对于一个长度为n的字符串,保存它至少需要占用的存储字节数为()。
正确答案是:
n+1
题目8对于一个二维字符数组a[M][N],存储每个字符串的长度至多为()。
正确答案是:
N-1
题目9若需要比较两个字符串的大小,则选用的函数是()。
正确答案是:
strcmp
二、判断题
题目10一维数组元素带有两个下标。
正确的答案是“错”。
题目11对于二维数组元素,数组名后使用两对中括号。
正确的答案是“对”。
题目12在一维数组的定义语句中,给数组赋初值的部分是用一对花括号括起来的数据表。
正确的答案是“对”。
题目13在一维数组的定义语句中,数组名前为元素类型关键字。
正确的答案是“对”。
题目14在二维数组的定义语句中,数组名后带有两对圆括号。
正确的答案是“错”。
题目15假定二维数组的定义语句为“doublea[M][N];,则”每个数组元素的列下标取值范围在1~N之间。
正确的答案是“错”。
题目16使用“typedefcharBB[10];语句”定义标识符BB为含有10个元素的一维字符数组。
正确的答案是
“错”。
题目17使用“typedefcharBB[10][50];
数组类型。
正确的答案是“对”。
语”句定义标识符BB为含有10行50列共500个元素的二维字符
题目18一个二维字符数组a[10][20]中存储每个字符串的最大长度为19。
一、单项选择题
题目1一个指针指向一个数据对象,它保存着该数据对象的地址,若数据对象为DataType类型,则该指针的类型为()。
正确答案是:
DataType*
题目2NULL是一个符号常量,通常作为空指针值,它的取值为()。
正确答案是:
0
题目3若要把一个整型指针p转换为字符指针,则采用的强制转换表达式为()。
.正确答案是:
(char*)p题目4若要定义整型指针p并初始指向x,则所使用的定义语句为()。
正确答案是:
int*p=&x;
题目5假定p所指对象的值为25,p+1所指对象的值为42,则表达式*p++的值为()。
正确答案是:
25
题目6假定p是一个指针变量,则该变量的地址表示为()。
t.
正确答案是:
&p
题目7已知“char*s="Helloworld!
";
正确答案是:
char*p=s;
,要”使变量p指向s所指向的同一个字符串,则p应定义为()。
题目8假定a为一个数组名,则下面表达式中错误的是()。
正确答案是:
*a++
题目9已知“char
b[10]=”12345”,*p=,b;则*”(p+2)的值为()。
正确答案是:
'3'
题目10已知“inta[6][5];,则”元素a[2][4]的地址比该数组的首地址大()。
正确答案是:
56个字节题目11要使p指向二维整型数组a[10][20],p应定义为()。
正确答案是:
int(*p)[20]=a;
题目12执行“int*p=malloc(sizeof(double)*2);语句后得”到的动态存储空间的字节数为()。
正确答案是:
16
题目13
利用动态存储分配创建具有10个字节的一维数组空间的正确语句是()。
正确答案是:
char
*p=malloc(10);二、判断题题目14
在定义指针变量的语句中,对指针变量不允许赋初值。
正确的答案是“错”。
题目15在定义指针变量的语句“int*p,pp;中,”p和pp具有相同的数据类型。
正确的答案是“错”。
题目16在语句“typedef
int*inPointer;中,”把标识符inPointer定义为int*类型。
正确的答案是“对”。
题目17假定a是一个一维数组,则a+i的值与&a[i]的值相等。
正确的答案是“对”。
题目18已知“inta[10],*p=a;,则进”行*p++运算是不允许的。
正确的答案是“错”。
题目19假定a是一个二维数组,则表达式*(a[j]+i)所对应的元素为a[i][j]。
正确的答案是“错”。
题目20假定a是一个二维数组,则数组名a的值和a[0]的值相等。
正确的答案是“对”。
题目21进行动态存储分配的calloc()函数带有一个参数。
正确的答案是“错”。
题目22用于释放动态存储空间的函数为free,调研它需要带有一个参数。
正确的答案是“对”。
题目23假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i个字节。
正确的答案是“对”。
单项选择题
在下面的函数声明语句中存在着语法错误的是()。
正确答案是:
AA(inta;intb)
题目2如果一个函数定义仅允许为所在的程序文件调用,则应在该函数定义的最前面添加的关键字为
()。
正确答案是:
static
题目3假定一个函数定义为“externchar*f1(char*
x){returnx;},表”示该函数作用域的关键字为()。
正确答案是:
extern
题目4假定一个函数的原型语句为“intff(int*x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是()。
正确答案是:
ff(a[0])
题目5型语句为“intf1(inta[],intn);,与数组”参数等价的表示为()。
正确答案是:
int*a
题目6假定一个函数的参数说明为constinta,则在函数体中不能进行的操作是()。
正确答案是:
a=10
题目7在函数体中定义的变量具有()。
正确答案是:
局部作用域
题目8在函数外定义的变量,若带有作用域关键字static,则它具有()。
正确答案是:
文件作用域题目9在函数体中定义一个静态变量时,选用的存储属性关键字为()。
正确答案是:
static
题目10假定一个函数原型为“voidff(inta[],intn),则对应”的函数指针类型为()。
选择一项:
正确答案是:
void(*ff)(int*a,int)
二、判断题
题目11函数定义格式中的参数表被称为实参表。
正确的答案是“错”。
题目12函数定义格式中的参数表被称为形参表。
正确的答案是“对”。
题目13函数调用参数表中的每个实参可以是表达式。
正确的答案是“对”。
题目14对于标识为static属性的变量,若没有对它进行初始化,则默认的初值为0。
正确的答案是“对”。
题目15在函数体中定义一个变量时,若不选用任何存储属性关键字进行标识,则它为静态变量。
正确
的答案是“错”。
题目16在C语言程序中,主函数也可以成为递归函数。
正确的答案是“错”。
题目17在C语言程序中,除主函数外的任何用户定义的函数都可以是递归函数。
正确的答案是“对”。
一、单项选择题
题目1在结构类型的定义中,对于类型标识符后的定义体,使用的起止标记符是一对()。
正确答案
是:
圆括号
题目2假定一个结构类型的定义为“structA{inta,b;doublec;};,则该类”型的长度为()。
正确答案是:
16
题目3假定一个结构类型的定义为“structD{inta;D*next;};8
题目4
,则该类”型的长度为()。
正确答案是:
假定有结构定义“structBook{chartitle[20];doubleprice;};,则不正确的”语句定义为()。
选择一项:
正确答案是:
structBookb=("C++Programming",27.0)
题目5假定有结构定义“structBook{chartitle[20];doubleprice;};,则正确的语”句定义为()。
正确答案是:
structBook*x=calloc(6,sizeof(structBook));
题目6假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。
正确答案是:
x->a
题目7与结构成员访问表达式p->name等价的表达式为()。
正确答案是:
(*p).name
题目8在一个链表中,每个结点必然存在着一个指向自身结点类型的指针域,用来保存下一个结点的
()。
正确答案是:
地址
题目9假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为()。
正确答案是:
p->next=f和f=p
题目10假定一个联合类型的定义为“unionD{inta;D*next;};
是:
4
二、判断题
,”则该类型的长度为()。
正确答案
题目11在同一个结构类型的定义中,各数据成员名必须不同。
正确的答案是“对”。
题目12在结构类型的定义中,其中的数据成员可以是本身类型的指针对象。
正确的答案是“对”。
题目13在结构类型的定义中,不允许出现结构类型不完整的超前定义。
正确的答案是“错”。
题目14定义结构类型的同时能够定义它的变量。
正确的答案是“对”。
题目15定义结构类型的变量时,能够用同类型的其他变量进行初始化,不能用数据表进行初始化。
正确的答案是“错”。
题目16使用结构类型时,必须一起使用关键字struct和类型标识符。
正确的答案是“对”。
题目17在一个链表中,表头结点和表尾结点均无后继结点。
正确的答案是“错”。
题目18在一个链表中,若表头指针的值非空,则表头和表尾结点必然不是同一个结点。
正确的答案是
“错”。
题目19在C语言中,一个结构类型的长度等于所含的所有数据成员类型长度的最大值。
正确的答案是“错”。
一、单项选择题
题目1标准输出设备显示器的文件流标识符是()。
正确答案是:
stdout
题目2表示文件结束符的符号常量EOF的值为()。
正确答案是:
-1
题目3假定一个磁盘数据文件占