问题 单项选择题

下列程序的运行结果为( )。
#include<stdio.h>
void fun(char *str)
int a, b;
for(a=b=0; str[a]!='\0'; a++)
if(str[a]!='c')
str[b++]=str[a];
str[b]='\0';
void main()
char str[]="abcdef";
fun(str);
printf("str[]=%s", str);

A) str[]=abdef
B) str[]=abcdef
C) str[]=a
D) str[]=ab

答案

参考答案:A

解析: 本题考查用字符指针引用字符数组中的字符及对字符的操作。函数fun()的for语句执行过程是:从字符指针str所指向的字符数组的第一个元素开始,逐一判断字符是否为'c',若不是就执行一次数组元素的赋值过程,若字符为'c'就不执行。

多项选择题
单项选择题