注意:此页面搜索的是所有试题
兰州大学C语言程序设计
11.
(4分)定义一个联合体变量时,系统分配给它的内存是( )
A. 联合体中第一个成员所需内存量
B. 联合体中最后一个成员所需内存量
C. 成员中占内存量最大者所需的容量
D. 各成员所需内存量的总和
10. (4分)printf函数中用到格式符.%4s.,其中数字4表示输出的字符串站用4列。如果字符串长度大于4,则按原字符长从左向右全部输出;如果字符串长度小于4,则输出方式为( ) A. 从左起输出该字符串,右补空格 B. 按原字符长从左向右全部输出 C. 右对齐输出该字符,左补空格 D. 输出错误信息
9. (4分)设有说明:char *str[10];则标识符str的意义是( ) A. str是一个指向有10个元素的数组的指针 B. str是一个有10个元素的数组,数组元素的数据类型是指向char型的指针型 C. str是一个指向char型函数的指针 D. str是具有10个指针元素的一维指针数组,每个元素都只能指向整型变量
8. (4分)下面程序main(){int x=4,y=0,z;x*=3+2; printf(“%d”,x);x*=y= =(z=4); printf(“%d”,x);}的输出结果是( ) A. 14 40 B. 20 0 C. 20 4 D. 14 4
7. (4分)以下对二维数组a的正确说明是( ) A. int a[3][] B. float a(3,4) C. double a[1][4] D. float a(3)(4)
6. (4分)下面能正确进行字符串赋值操作的是( ) A. char s[5]={.ABCDE.} B. char s[5]={.A.,.B.,.C.,.D.,.E.} C. char *s D. s=.ABCDE. E. char *s F. scanf(.%s.,s)
5. (4分)若数组a有m列,则ali][j]之前的数组元素个数为( ) A. (i-1)*(i-1) B. i*m+j+1 C. i*m+j-1 D. i*m+j
4. (4分)下面是对s的初始化,其中不正确的是( ) A. char s[5]={.abc.} B. char s[5]={.a.,.b.,.c.} C. char s[5]=.. D. char s[5]=.abcde.
3. (4分)C语言规定,函数返回值的类型是由( )所决定。 A. return语句中的表达式类型 B. 调用该函数时的主调函数类型 C. 调用该函数是系统临时指定 D. 在定义该函数时所指定的函数类型
2. (4分)变量的指针,其含义是指变量的( ) A. 值 B. 地址 C. 名 D. 一个标志
1. (4分)根据下面的定义,能打印出字母“M”的语句是( )struct person{char name[9];int age;};struct person class[10]={.John.,17,.Paul.,19,.Mary.,18,.adam.,16 }; A. printf(.%c\n.,class[3].name) B. printf(.%c\n.,class[3].name[l]) C. printf(.%c\n.,class[2].name[l]) D. printf(.%c\n.,class[2].name[0])
4. (4分)main(){int x,y,z;x=1;y=1;z=0;x=x||y&&z;printf(.%d,%d.,x,x&&!y||z);}程序的运行结果是1,1
(4分)strcmp3(char *s,char *t){for (;*t= =*s;){if (!*t) return 0; t++;s++;}return (*s-*t);}库函数strcmp(char*s,char*t)是功能相等的程序段
2. (4分)对for(表达式1; ;表达式3)可理解为for (表达式1;1;表达式3)
1. (4分)int k=0;do{++k;}while(k>=0);是无限循环的语句
10. (4分)printf函数中用到格式符.%4s.,其中数字4表示输出的字符串站用4列。如果字符串长度大于4,则按原字符长从左向右全部输出;如果字符串长度小于4,则输出方式为( ) A. 从左起输出该字符串,右补空格 B. 按原字符长从左向右全部输出 C. 右对齐输出该字符,左补空格 D. 输出错误信息
9. (4分)设有说明:char *str[10];则标识符str的意义是( ) A. str是一个指向有10个元素的数组的指针 B. str是一个有10个元素的数组,数组元素的数据类型是指向char型的指针型 C. str是一个指向char型函数的指针 D. str是具有10个指针元素的一维指针数组,每个元素都只能指向整型变量
8. (4分)下面程序main(){int x=4,y=0,z;x*=3+2; printf(“%d”,x);x*=y= =(z=4); printf(“%d”,x);}的输出结果是( ) A. 14 40 B. 20 0 C. 20 4 D. 14 4
7. (4分)以下对二维数组a的正确说明是( ) A. int a[3][] B. float a(3,4) C. double a[1][4] D. float a(3)(4)
6. (4分)下面能正确进行字符串赋值操作的是( ) A. char s[5]={.ABCDE.} B. char s[5]={.A.,.B.,.C.,.D.,.E.} C. char *s D. s=.ABCDE. E. char *s F. scanf(.%s.,s)
5. (4分)若数组a有m列,则ali][j]之前的数组元素个数为( ) A. (i-1)*(i-1) B. i*m+j+1 C. i*m+j-1 D. i*m+j
4. (4分)下面是对s的初始化,其中不正确的是( ) A. char s[5]={.abc.} B. char s[5]={.a.,.b.,.c.} C. char s[5]=.. D. char s[5]=.abcde.
3. (4分)C语言规定,函数返回值的类型是由( )所决定。 A. return语句中的表达式类型 B. 调用该函数时的主调函数类型 C. 调用该函数是系统临时指定 D. 在定义该函数时所指定的函数类型
2. (4分)变量的指针,其含义是指变量的( ) A. 值 B. 地址 C. 名 D. 一个标志
1. (4分)根据下面的定义,能打印出字母“M”的语句是( )struct person{char name[9];int age;};struct person class[10]={.John.,17,.Paul.,19,.Mary.,18,.adam.,16 }; A. printf(.%c\n.,class[3].name) B. printf(.%c\n.,class[3].name[l]) C. printf(.%c\n.,class[2].name[l]) D. printf(.%c\n.,class[2].name[0])
4. (4分)main(){int x,y,z;x=1;y=1;z=0;x=x||y&&z;printf(.%d,%d.,x,x&&!y||z);}程序的运行结果是1,1
(4分)strcmp3(char *s,char *t){for (;*t= =*s;){if (!*t) return 0; t++;s++;}return (*s-*t);}库函数strcmp(char*s,char*t)是功能相等的程序段
2. (4分)对for(表达式1; ;表达式3)可理解为for (表达式1;1;表达式3)
1. (4分)int k=0;do{++k;}while(k>=0);是无限循环的语句