
#include <stdioh>
#include <stringh>
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 <stdioh>
#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个已经排好的字符串
1、首先,我们定义一个反序函数 revStr,它的参数为一个字符指针。
2、随后,获取传入的字符串的长度。
3、接着定义一个临时字符变量,以便在交换首尾字符时使用。
4、最后,通过一个循环,从头尾开始,逐个交换两头的字符。
5、在主程序中来测试一下该函数。
6、可以看到,字符串123456789被成功反序了。
#include <stdioh>
#include <stdlibh>
void reverse(int a, int n)
{
int p=a+n-1,t;
while(a<p)
{
t=a;
a++=p;
p--=t;
}
}
int main()
{
int a;
int n,i;
scanf("%d",&n);
a=(int )malloc(sizeof(int)n);
for(i = 0; i < n; i ++)
scanf("%d",&a[i]);
reverse(a,n);
for(i = 0; i < n; i ++)
printf("%d ",a[i]);
return 0;
}
#include <stdioh>
#include <stringh>
#define N 10 //可通过改变N 的值来改变输入字符串的长度
char a[30];
int i;
void main()
{
void Reverse(); //函数声明
printf("请输入字符串:");
scanf("%s",&a[i]);
printf("反转后的字符串:");
Reverse(); //函数调用
}
void Reverse() //函数定义
{
for(i=N;i>=0;i--)
printf("%c ",a[i]);
printf("\n");
}
Reverse是反转;当然,函数名你可以任意取
这个程序对初学者来说比较好,有函数调用的方法和实现过程!
#include<stdioh>
void fun(char s)
{
if(s) {fun(s+1);putchar(s);}
}
void main()
{
char s[81];
gets(s);
fun(s);
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)