|
(26)若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是 A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参 (27)有以下程序 float fun(int x,int y) {return(x+y);} main() {int a=2,b=5,c=8; printf("%3.0f\n",fun((int)fun(a+c,b),a-c)); } 程序运行后的输出结果是 A)编译出错 B)9 C)21 D)9.0 (28)若有以下调用语句,则不正确的fun函数的首部是 main() { … int a[50],n; … fun(n, &a[9]); … } A)void fun(int m, int x[]) B)void fun(int s, int h[41]) C)void fun(int p, int *s) D)void fun(int n, int a) (29)fseek函数的正确调用形式是 A)fseek(文件指针,起始点,位移量) B)fseek(文件指针,位移量,起始点) C)fseek(位移量,起始点,文件指针) D)fseek(起始点,位移量,文件指针) (30)若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是 A)EOF B)-1 C)1 D)NULL (31)若有说明语句:char c='\72';则变量c A)包含1个字符 B)包含2个字符 C)包含3个字符 D)说明不合法,c的值不确定 (32)若有说明 int a[3][4];则a数组元素的非法引用是 A)a[0][2*1] B)a[1][3] C)a[4-2][0 ] D)a[0][4](33)设有以下说明语句 struct stu {int a; float b; } stutype; 则下面的叙述不正确的是 A)struct是结构体类型的关键字 B)struct stu是用户定义的结构体类型 C)stutype是用户定义的结构体类型名 D)a和b都是结构体成员名 (34)在C语言中,引用数组元素时,其数组下标的数据类型允许是 A)整型常量 B)整型表达式 C)整型常量或整型表达式 D)任何类型的表达式 (35)若运行时给变量x输入12,则以下程序的运行结果是 main() {int x,y; scanf("%d",&x); y=x>12?x+10:x-12; printf("%d\n",y); } A)0 B)22 C)12 D)10( (36)以下说法正确的是 A)C语言程序总是从第一个的函数开始执行 B)在C语言程序中,要调用函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分 (37)表达式0x13^0x17的值是 A)0x04 B)0x13 C)0xE8 D)0x17 (38)有以下程序 #define F(X,Y)(X)*(Y) main() {int a=3, b=4; printf("%d\n", F(a++, b++)); } 程序运行后的输出结果是 A)12 B)15 C)16 D)20 (39)下列程序执行后的输出结果是 void func(int *a,int b[]) { b[0]=*a+6; } main() {int a,b[5]; a=0; b[0]=3; func(&a,b); printf("%d\n",b[0]); } A)6 B)7 C)8 D)9 (40)若有下面的程序段: char s[]="china";char *p; p=s; 则下列叙述正确的是 A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等 C)s数组长度和p所指向的字符串长度相等 D)*p与s[0]相等 (41) 以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序 void sort(int a[],int n) {int i,j,t; for(i=0;i for(j=i+1;j if(a[i] } main() {int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(&aa[3],5); for(i=0;i<10;i++)printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是 A)1,2,3,4,5,6,7,8,9,10, B)10,9,8,7,6,5,4,3,2,1, C)1,2,3,8,7,6,5,4,9,10, D)1,2,10,9,8,7,6,5,4,3, (42) 以下程序的运行结果是 #include "stdio.h" main() {struct date {int year,month,day;}today; printf("%d\n",sizeof(struct date)); } A)6 B)8 C)10 D)12 (43)若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是 A)a,point,*&a B)&*a,&a,*point C)*&point,*point,&a D)&a,&*point,point (44)在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是 A)地址传递 B)单向值传递 C)由实参传形参,再由形参传实参 D)传递方式由用户指定 (45)已定义以下函数 fun(char *p2, char *p1) { while((*p2=*p1)!='\0'){p1++;p2++;} } 函数的功能是 A)将p1所指字符串复制到p2所指内存空间 B)将p1所指字符串的地址赋给指针p2 C)对p1和p2两个指针所指字符串进行比较 D)检查p1和p2两个指针所指字符串中是否有'\0' (46)若执行下述程序时,若从键盘输入6和8时,结果为 main() {int a,b,s; scanf("%d%d",&a,&b); s=a if(a s=b; s*=s; printf("%d",s); } A)36 B)64 C)48 D)以上都不对 (47)fscanf函数的正确调用形式是 A)fscanf(fp,格式字符串,输出表列); B)fscanf(格式字符串,输出表列,fp); C)fscanf(格式字符串,文件指针,输出表列); D)fscanf(文件指针,格式字符串,输入表列); (48)下列关于C语言数据文件的叙述中正确的是 A)文件由ASCII码字符序列组成,C语言只能读写文本文件 B)文件由二进制数据序列组成,C语言只能读写二进制文件 C)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件 D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件 (49)有以下程序 void ss(char *s,char t) {while(*s) {if(*s= =t)*s=t-'a'+'A'; s++; } } main() {char str1[100]="abcddfefdbd",c='d'; ss(str1,c); printf("%s\n",str1); } 程序运行后的输出结果是 A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd (50)若以下定义: struct link {int data; struct link *next; } a,b,c,*p,*q; 且变量a和b之间已有如下图所示的链表结构: 指针p指向变量a,q指向变量c。则能够把c插入到a和b 之间并形成新的链表的语句组是: A)a.next=c; c.next=b; B)p.next=q; q.next=p.next; C)p->next=&c; q->next=p->next; D)(*p).next=q; (*q).next=&b;
共4页: 上一页 [1] 2 [3] [4] 下一页
|