黄岛区耀鑫泰商店:怎么样将一个数组中的字符串按逆顺序重新存放

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 06:55:01
例如:原来顺序为a,s,d,f,g.要求改为:g,f,d,s,a.
希望有详细的c程序!!

#include<stdio.h>

void wrt_it(void);

void main()
{
printf("Input a line: ");
wrt_it();
printf("\n");
}

void wrt_it(void)
{
int c;

if((c = getchar()) != '\n')
wrt_it();
putchar(c);
}

字符串呀?简单了,不用什么Stack,头尾两两交换,不停往中间走,直到相遇就好了。
#include <string.h>
/*
将字符串倒置
输入为字符串str;
返回字符串的地址
*/
char* reverse(char *str)
{
int i,n;
char tmp;
if (str == NULL)
{
return 0;
}

n=strlen(str)-1;
for(i=0;i<n;i++,n--)
{
tmp = str[i];
str[i] = str[n];
str[n] = tmp;
}
return str;
}

这还不好改
见一个堆栈把所有的都压进去,然后在拿出来不就得了