古穿今之我是杀手:c语言排序问题?
来源:百度文库 编辑:查人人中国名人网 时间:2024/04/28 22:32:58
用for,if语句编代码
倒着输出
不限制出入的字符多少
怎么编原代码啊?
谢谢!
来吧,这个应该可以完美的解决你的问题 ^_^
#include <stdio.h>
void invert(char s[], int n);
int main(int argc, char *argv[])
{
int len;
char buf[1024], *tmp=NULL;
memset(buf, 0, sizeof(buf));
while( 1 )
{
printf("%x : Please input string (^C to exit): ", &buf);
tmp = fgets(buf, sizeof(buf), stdin);
len = strlen(tmp);
if( len>1 )
{
tmp[len-1] = '\0';
invert(tmp, strlen(tmp));
fputs(tmp, stdout);
fputs("\n", stdout);
}
}
return 0;
}
void invert(char s[], int n)
{
char temp;
if(n>1)
{
invert(s+1, n-2);
temp = s[0];
s[0] = s[n-1];
s[n-1] = temp;
}
}
首先定义个允许输入最大字符串的字符数组
char string[max]
接收输入字符,计算输入字符长度length
for(int i=length-1; i>=0; i--)
{
...
}