下列程序的运行结果为( ). void abc(char *str) { int a,b; for(a=b=0;str[a]!='\0';a++) if(str[a]!='c') {str[b]=str[a]; b++; }str[b]='\0'; } main( ) { char str[]="abcdef"; abc(str); printf("str[]=%s",str); }
举一反三
- 下列对str 初始化为字符串“abc”的是( ) A: char str={abc}; B: char str[]={'a','b','c','\0'}; C: char str[]={'a','b','c'}; D: char str[]=abc;
- 下列程序运行后的输出结果是______ int main(){ char str[]="The_Microsoft"; int n=4; sub(str,0,n-1); sub(str,0,strlen(str)-1); printf("%s\n",str);}sub(str,n1,n2){ char *str; int n1,n2; char c,*p; p=str+n2; str=str+n1; while(str
- 以下不能将键盘输入的字符串:This is a string 读入到str中的程序段是______。 A: char str[80]; scanf("%s",str) ; B: char str[80]; int i=0; while((str[i++]=getchar())!='\n'); str[i]=0; C: char str[80]; gets(str); D: char str[80], *ps=str; do{ scanf("%c",ps); } while(*ps++ !='\n'); *(ps)=0;
- 下面语句错误的是( )。 A: int *p; *p=20; B: char *s="abcdef"; printf("%s\n",s); C: char *str="abcdef"; char *p;p=str D: char *str;str="abcdef";
- 下列字符数组定义错误的是: A: char str[]="abc"; B: char str[]={"abc"}; C: char str[3]={'a', 'b', 'c'}; D: char str[3]={"abc"};