用C语言写一个函数,使输入的字符串按反序存放,在主函数中输入和输出字符串。
#include <stdio.h>
#include <string.h>
int main()
{void inverse(char str[]);
char str[100];
printf("input string:");
scanf("%s",str);
inverse(str);
printf("inverse string:%s\n",str);
return 0;
}
void inverse(char str[])
{char t;
int i,j;
for (i=0,j=strlen(str);i<(strlen(str)/2);i++,j--)
{t=str[i];
str[i]=str[j-1];
str[j-1]=t;
}
}
文件1:
#include <stdio.h>
#define N 6
//static char str[N]; 这个没必要
int f (char); //声明flashback函数. // 声明放外面,好的习惯
int main()
{
char str[N] = "abcde";
printf("原字符串:\n");
puts (str);
f (str[N]); //调用flashback函数.
printf("倒序后的字符串:\n");
puts (str);
printf("\n");
}
文件2:
//#define N 6
//extern char str[N]; //也没必要
int f (char str2[N]) //你这个N没什麽用
{
int i,t;
for (i=0;i<=N-1;i++)
{
t = str2[i];
str2[i] = str2[N-i];
t = str2[N-i];
}
return (str2[N]);
}
参考#3
char* reserve(char* src)
{
int j = strlen(src)-1;
for ( int i=0 ;i<j;++i,--j )
{
char temp = src[j];
src[j] = src[i];
src[i] = temp;
}
return src;
}
在主函数中输入10个等长的字符串。用另一个函数对它们排序,然后主函数输出10个已经排好的字符串