计算机二级

有以下程序#include<stdio.h>void fun(char*c){while(*C){if(*c>=‘a’&&*c<=‘z’) *c=*c一(‘a’一‘A’);C++;}}main(){char s[81];gets(s);fun(s);puts(s);}当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是A.hello beijingB.Hello BeijingC.HELLO BEIJINGD.hELLO Beijing

题目

有以下程序

#include<stdio.h>

void fun(char*c)

{while(*C)

{if(*c>=‘a’&&*c<=‘z’) *c=*c一(‘a’一‘A’);

C++;

}

}

main()

{char s[81];

gets(s);fun(s);puts(s);

}

当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是

A.hello beijing

B.Hello Beijing

C.HELLO BEIJING

D.hELLO Beijing

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有以下程序 #include<stdio.h> void fun(char*c) {while(*c) {if(*c>=a*c<=z)*c=*c=(’a’-’A’) c++; } } main( ) {char s[81]; gets(s);fun(;)puts(s); 当执行程序时从键盘输入Hello Beijing<回车>,则程序的输出结果是( )。

A.hello beijing

B.Hello Beijing

C.HELLO BEIJING

D.hELLO Beijing


正确答案:C
此程序是进行将小写字母变成大写操作,所以答案为C。

第2题:

设有以下函数: void fun(int n,char*s){…} 则下面对函数指针的定义和赋值均正确的是( )。

A.void(*pf)( );pf=fun;

B.void*pf( );pf=fun

C.void*pf( );*pf=fun;

D.void(*pf)(int,char);pf=&fun;


正确答案:A
函数指针的定义格式为函数类型(*指针变量名)(形参列表);函数名和数组名一样代表了函数代码的首地址,因此在赋值时,直接将函数指针指向函数名就行了。所以选项A正确。

第3题:

有以下程序

#include <stdio.h>

void fun(char *a,char *b)

{ while(*a=='*') a++;

while(*b=*a) {b++;a++;}

}

main( )

{ char *s="****a*b****",t[80];

fun(s,t); puts(t);

}

程序的运行结果是

A)*****a*b

B) a*b

C) a*b****

D) ab


正确答案:C

第4题:

有以下程序

#include

void fun(char *c)

{ while(*c)

{ if(*c>='a'&&*c<='z') *c=*c-('a'-'A');

c++;

}

}

main()

{ char s[81];

gets(s); fun(s); puts(s):

}

当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是

A.hello beijing

B.Hello Beijing

C.HELLO BEIJING

D.hELLO Beijing


正确答案:C

第5题:

设有以下函数:

void fun(int n,char*$s){……}

则下面对函数指针的定义和赋值均正确的是

A.void(*pf)( );pf=fun;

B.void*Pf( );pf=fun;

C.void*pf( ); *pf=fun;

D.void(*pf)(int,char);nf=&fun;


正确答案:A
解析:函数指针的定义形式是:数据类型标识符(*指针变量名)( )。void(*pf)( )定义了一个没有返回值的函数指针pf,在给函数指针变量赋值时,只需给出函数名而不必给出参数。所以给pf赋值时,只把函数名fun赋给pf即可。所以正确答案为选项A)。

第6题:

有以下程序:includevoid fun(char *a,char*B){while(*a=='*')a++;while(*b=*A){b++;a+

有以下程序: #include<stdio.h> void fun(char *a,char*B){while(*a=='*')a++; while(*b=*A){b++;a++;} } main() {char*s="****a*b****",t[80]; fun(s,t);puts(t); } 程序的运行结果是( )。

A.*****a*b

B.a*b

C.a*b****

D.ab


正确答案:C

第7题:

有以下程序

#include <stdio.h>

void fun( char. c)

{ if(c>'x') fun( c-1);

printf("%c",c);

}

main( )

{ fun(’z’); }

程序运行后的输出结果是

A) xyz

B) wxyz

C) zyxw

D)zyx


正确答案:A
【答案】A
【知识点】函数递归调用
【解析】第一次调用时实参为字符“z”,条件满足执行第二次调用,实参为“y”,条件满足执行第三次调用 ,实参为“x”,然后条件不满足,打印输出第一个字符“x”,然后回到第二层调用打印字符“y”,最后回到第一层调用打印字符“z”。

第8题:

设有以下函数

void fun(int n,char * s) { …… }

则下面对函数指针的定义和赋值均是正确的是

A)void (*pf)(); pf=fun;

B)viod *pf(); pf=fun;

C)void *pf(); *pf=fun;

D)void (*pf)(int,char);pf=&fun;


正确答案:A

第9题:

设有以下函数:

voidfun(intn,char}s){……}

则下面对函数指针的定义和赋值均正确的是( )。

A.void(*pf)(int,char);pf=&fun;

B.void+pf( );pf=fun;

C.void*pf( );*pf=fun;

D.void(*pf)(int,char*);pf=fun;


正确答案:D
函数的参数可以是指针类型。它的作用是将一个变量的地址传送到另一个函数中。函数名代表函数的人口地址,指向函数的指针应该定义为void(+pf)()。如果定义为void·pf(),则表示函数pf返回值为一个基类型为void的指针。因此D选项正确。

第10题:

(29)有以下程序include <stdio.h>void fun(char *c){ while(*c){ if(*c>='a'&&

(29)有以下程序

#include <stdio.h>

void fun(char *c)

{ while(*c)

{ if(*c>='a'&&*c<='z') *c=*c-('a'-'A');

c++;

}

}

main()

{ char s[81];

gets(s); fun(s); puts(s):

}

当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是

A)hello beijing

B)Hello Beijing

C)HELLO BEIJING

D)hELLO Beijing


正确答案:C