下列程序的运行结果为( )。 #include void abc(char*str) { int a,b,i,j; for(i=j=0;str[i]!=’\0’;i++) if(str[i]!=’a’)

admin2019-12-17  34

问题 下列程序的运行结果为(    )。
    #include
    void abc(char*str)
    {  int a,b,i,j;
    for(i=j=0;str!=’\0’;i++)
    if(str!=’a’)
    str[j++]=str
    str[j]=’\0’;
    }
    void main()
    {  char str[]="abcdef";
    abc(str);
    printf("str[]=%s",str);
    }

选项 A、str[]=bcdef
B、str[]=abcdef
C、str[]=a
D、str[]=ab

答案A

解析 本题考查函数调用的参数传递。通过函数abc的执行,将字符串中的字母a去掉,保留剩下的,由于是通过指针调用,所以改变了字符串的结果。
转载请注明原文地址:https://jikaoti.com/ti/2OG0FFFM
0

最新回复(0)