逆序字符串
究其本质都是传入的数组首地址,然后进行逆序
代码
#include<stdio.h>
#include<string.h>
#define N 30
//指针操作
void reverse(char *str,int n)//*str 或者str[]
{
int i;
char p;
for(i=0;i<n/2;i++){
p=*(str+i);//存放从第一个继续的首地址
*(str+i)=*(str+n-i-1);//比如abcdef -1是下标原因
*(str+n-i-1)=p;
}
puts(str);
}
//数组操作
//void reverse(char str[] ,int n)//*str 或者str[]
//{
// int i;
// char p;
// for(i=0;i<n/2;i++){
// p=str[i];//存放从第一个继续的首地址
// str[i]=str[n-i-1];//比如abcdef -1是下标原因
// str[n-i-1]=p;
// }
// puts(str);
//}
int main()
{
printf("请输入一个字符串:");
char str[N];
gets(str);
int n=strlen(str);
reverse(str,n);
}