Dotcpp   >   练题 - 第222页

全部知识点

第4421题

有以下函数:

int fun(char *ps)
{
    char *p;
    p=ps;
    if(*ps==NULL)return 0;
    while(*++p);
    return(p-ps);
}

该函数的功能是()。

第4422题

有以下函数

int aaa(char *s)
{
char *t=s;
while(*t++);
t--;
return (t-s);
}

以下关于aaa函数功能叙述正确的是()。

第4423题

有以下函数

int fun(char *s)
{
    char *t=s;
    while(*t++);
    return(t-s);
}

该函数的功能是()。

第4424题

有以下函数:

void fun(char*p,char*q)
{
    while((*p++=*q++)!='\0');
}

该函数的功能是()。

第4425题

下列函数的功能是()。

fun(char * a,char * b)
{
    while((*b= *a)!='\0')
    {
        a++;
        b++;
    }
}
第4426题

有以下函数:

int fun(char *s,char *t)
{
    while((*s)&&(*t)&&(*t++==*s++));
    return (*s-*t);
}

函数的功能是()。

第4427题

有以下程序:

#include <stdio.h>
#include <string.h>
main()
{
    int i;
    char a[]="How are you!";
    for(i=0;a[i];i++)
    {
        if(a[i]==' ')
        {
            strcpy(a,&a[i+1]);
            i=0;
        }
    }
    printf("%s\n",a);
}

程序的运行结果是()。

第4428题

有以下程序:

#include <stdio.h>
#include <string.h>
main()
{
    char a[5][10]= {"china", "beijing", "you", "tiananmen", "welcome"};
    int i,j;
    char t[10];
    for(i=0;i<4;i++)
        for(j=i+1;j<5;j++)
            if(strcmp(a[i],a[j])>0)
            {
                strcpy(t,a[i]);
                strcpy(a[i],a[j]);
                strcpy(a[j],t);
            }
    puts(a[3]);
}

程序运行后的输出结果是()。

第4429题

有以下程序(strcat函数用以连接两个字符串):

#include <stdio.h>
#include <string.h>
main()
{
    char a[20]="ABCD\0EFG\0", b[]="IJK";
    strcat(a,b);
    printf("%s\n",a);
}

程序运行后的输出结果是()。

第4430题

有以下程序(程序中库函数islower(ch)用以判断ch中的字符是否为小写字母):

#include <stdio.h>
#include <ctype.h>
void fun(char *p)
{
    int i=0;
    while(p[i])
    {
        if(p[i]==' '&&islower(p[i-1]))p[i-1]=p[i-1]-'a'+'A';
        i++;
    }
}
main()
{
    char s1[100]="ab cd EFG!";
    fun(s1);
    printf("%s\n",s1);
}

程序运行后的输出结果是( )。

第4431题

有以下程序:

#include <stdio.h>
#include <string.h>
main()
{
    char str[][20]={"One*World","One*Dream!"}, *p=str[1];
    printf("%d,",strlen(p));
    printf("%s\n",p);
}

程序运行后的输出结果是()。

第4432题

有以下程序

#include <stdio.h>
#include <string.h>
main()
{
    char p[20]= {'a','b','c','d'}, q[]="abc", r[]="abcde";
    strcat(p,r);
    strcpy(p+strlen(q),q);
    printf("%d\n",strlen(p));
}

程序运行后的输出结果是()。

第4433题

设有以下函数:

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

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

第4434题

有以下程序

#include <stdio.h>
int add(int a,int b)
{
    return (a+b);
}
main()
{
    int k, (*f)(),a=5,b=10;
    f=add;
    …
}

则以下函数调用语句错误的是()。

第4435题

以下叙述中正确的是()。

第4436题

有以下程序

#include <stdio.h>
int fun(int n)
{
    if(n==1)
        return 1;
    else
        return(n+fun(n-1));
}
main()
{
    int x;
    scanf("%d",&x);
    x=fun(x);
    printf("%d\n",x);
}

执行程序时,给变量x输入10,程序的输出结果是()。

第4437题

有以下程序:

#include <stdio.h>
int fun(int n)
{
    if(n)return fun(n-1)+n;
    else return 0;
}
main()
{
    printf("%d\n",fun(3));
}

程序的运行结果是()。

第4438题

有如下程序:

#include <stdio.h>
void convert(char ch)
{
if(ch<'D')convert(ch+1);
printf("%c",ch);
}
main()
{
convert('A');
printf("%\n");
}

程序运行后的输出结果是()。

第4439题

设有如下函数定义:

int fun(int k)
{
    if(k<1) return 0;
    else if(k==1) return 1;
    else return fun(k-1)+1;
}

若执行调用语句:n=fun(3);,则函数fun()总共被调用的次数是()。

第4440题

以下程序:

#include <stdio.h>
void fun(int x)
{
    if(x/2>1) fun(x/2);
    printf("%d",x);
}
main()
{
    fun(7);
    printf("\n");
}

程序运行后的结果是()。