C语言上机试题库百科园第6章!南信大!

.

第六章 单选

若已定义char s[10];则在下面表达式中不表示s[1]的地址是( )。 A.&s[1] B.&s[0]+1 C.s+1 D.s++

下面程序段的运行结果是( )。 char a[ ]=”language” , *p ; p=a ;

while (*p!='u') { printf(“%c”,*p-32); p++ ; } A.language B.langUAGE C.LANGUAGE D.LANG

下面能正确进行字符串赋值操作的是( ) A.char s[5]={'A','B','C','D','E'}; B.char s[5]={\C.char *s ; s=\D.char *s; scanf(\

设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下能正确执行并得到有意义的结果的赋值语句是( )。 A.p2=c;

B.c=*p1+*p2; C.p1=p2;

D.c=*p1*(*p2);

已有函数max(a,b),为了让函数指针变量p指向函数max,正确的赋值方法是( )。

A.*p=max(a,b); B.*p=max; C.p=max;

D.p=max(a,b);

以下正确的叙述是( )。

A.C语言允许main函数带形参,且形参个数和形参名均可由用户指定 B.当main函数带有形参时,传给形参的值只能从命令行中得到

C.若有说明: int main(int argc,char **argv),则argc的值必须大于1 D.C语言允许main函数带形参,形参名只能是argc和argv 若有定义:int (*p)[4];则标识符p( )。 A.是一个指针数组名 B.定义不合法

C.是一个指向整型变量的指针

D.是一个指针,它指向一个含有四个整型元素的一维数组

设有程序段:char s[ ]=\则下面叙述正确的是()。 A.*p与s[0]相等

.

.

B.数组s中的内容和指针变量p中的内容相等 C.s数组长度和p所指向的字符串长度相等 D.s和p完全相同

下面程序段的运行结果是( )。 char *s=”abcde” ;

s+=2 ; printf(“%s”,s); A.字符'c'的地址 B.不确定 C.cde D.字符'c'

下面判断正确的是()。

A.char str[10]={\等价于 char str[10]; str[ ]={\B.char c[4]=\等价于 char c[4]=d[4]=\C.char *a=\等价于 char *a; *a=\D.char *s=\等价于 char *s; s=\

设有程序段:char s[ ]=”china”; char *p ; p=s ;则下面叙述正确的是( ) A.数组s中的内容和指针变量p中的内容相等 B.*p与s[0]相等

C.s数组长度和p所指向的字符串长度相等 D.s和p完全相同

已有变量定义和函数调用语句:int a=25;print_value(&a);下面函数的输出结果是( )

void print_value(int *x) { printf(“%d\\n”,++*x); } A.24 B.23 C.25 D.26

若有说明:int *p,m=5,n;以下程序段正确的是( ) A.p = &n ; *p = m ; B.p=&n ;scanf(\C.p = &n ;scanf(\D.scanf(\

变量的指针,其含义是指该变量的( ) A.值 B.地址 C.一个标志 D.名

已有定义int k=2;int *ptr1,*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是( ) A.ptr2=k;

B.k=*ptr1+*ptr2; C.k=*ptr1*(*ptr2); D.ptr1=ptr2

.

.

程序设计

/*请编写函数fun,该函数的功能是:判断字符串是否为回文,若是则函数返回1,主函数中输出\否则返回0,主函数中输出\。

回文是指顺读和倒读都一样的字符串。例如,字符串LEVEL是回文,而字符串123312就不是回文。

注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序:*/

#include #define N 80

int fun(char str[]) {

/***************Begin************/

/*************** End ************/

}

void main() {

char s[N]; FILE *out;

char test[][80]={\ int i;

printf(\ gets(s);

printf(\ puts(s); if(fun(s))

printf(\ else

printf(\

/************************************/ out=fopen(\ for(i=0;i<4;i++) if(fun(test[i]))

fprintf(out,\ else

fprintf(out,\ fclose(out);

/************************************/ }

【参考代码】 int fun(char str[])

.

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4