c语言一个字符串置逆问题

Python011

c语言一个字符串置逆问题,第1张

函数shixian中,指针变量c,p都被改变过,都不是指向原字符串首,所以打印出来的不是完整的字符串,在函数外打印就没错。

在函数shixian中的检测结束条件时有错。

下面的程序改正,且编译调试通过

#include<stdio.h>

void shixian(char *c)

int main()

{

char ch[12]

gets(ch)

shixian(ch)

printf("%s",ch)

return 0

}

void shixian(char *c)

{

char t,*p=c

while(*c!='\0')

{

c++

}

c--

for(c-1>=pc--,p++)

{

t=*c

*c=*p

*p=t

}

//printf("%s",c)

}

看你的程序你是想用冒泡排序的思想实现倒序,程序修改如下:

#include <stdio.h>

void sum(char *w)

{

int i,j

char z

for(j=0j<5j++)

{

for(i=0i<6-j-1i++)

{

z=*(w+i)

*(w+i)=*(w+1+i)

*(w+i+1)=z

}

}

puts(w)

}

int main ()

{

char a[7]="abcdef"

char *p=a

sum(p)

}