-
1以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址#include <stdio.h>#include <string.h>char *scmp(char *s1, char *s2){ if(strcmp(s1,s2)<0) return(s1); else return(s2);}main(){ int i; char string[20], str[3][20]; for(i=0;i<3;i++) gets(str[i]); strcpy(string,scmp(str[0],str[1])); /*库函数strcpy对字符串进行复制*/ strcpy(string,scmp(string,str[2])); printf("%sn",string);}若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为
A.abcd
B.abba
C.abc
D.abca
开始考试点击查看答案 -
2若有定义:int *p[3];,则以下叙述中正确的是
A.定义了一个基类型为int的指针变量p,该变量具有三个指针
B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针
C.定义了一个名为*p的整型数组,该数组含有三个int类型元素
D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素
开始考试点击查看答案 -
3有以下程序fun(int a, int b){ if(a>b) return(a); else return(b);}main(){ int x=3, y=8, z=6, r; r=fun(fun(x,y), 2*z); printf("%dn", r);}程序运行后的输出结果是
A.3
B.6
C.8
D.12
开始考试点击查看答案 -
4有以下程序#include <stdio.h>#define F(X,Y) (X)*(Y)main(){ int a=3, b=4; printf("%dn", F(a++, b++));}程序运行后的输出结果是
A.12
B.15
C.16
D.20
开始考试点击查看答案 -
5下列函数定义中,会出现编译错误的是
A.max(int x,int y,int *z){ *z=x>y 、 x:y; }
B.int max(int x,y){ int z; z=x>y 、 x:y; return z;}
C.max(int x,int y){ int z; z=x>y、x:y; return(z);}
D.int max(int x,int y){ return(x>y、x:y); }
开始考试点击查看答案 -
6有以下程序段main(){ int a=5,*b,**c; c=&b; b=&a; ……}程序在执行了c=&b;b=&a;语句后,表达式:**c的值是
A.变量a的地址
B.变量b中的值
C.变量a中的值
D.变量b的地址
开始考试点击查看答案 -
7有以下程序#include <string.h>main(){ char str[][20]={"Hello","Beijing"},*p=str; printf("%dn",strlen(p+20));}程序运行后的输出结果是
A.0
B.5
C.7
D.20
开始考试点击查看答案 -
8已定义以下函数fun(char *p2, char *p1){ while((*p2=*p1)!='