请编写程序实现如下的功能。
(1)假设主函数内,存在一个已经初始化的由小写英文字母组成的字符串 str1(长度不超过100);
(2)利用递归方法编写函数trans(),该函数对于字符串str1完成如下的处理:若字符串str1是由 字母组成,trans()函数处理以后将生成新字符串str2,str2由字母组成。
(3)在主函数中通过屏幕输出转换后的字符串str2。
要求:
(1)trans()函数须采用递归方法完成字符串的处理;
(2)处理后的字符串须在主函数中输出。
例如:假设初始化的str1为 abcdefg 屏幕输出: gafbecddcebfag #include<string.h> void main() { void trans(char str1[100],char str2[200],int n); char str1[100]={"abcdefg"},str2[200]={'\0'}; int n; n=strlen(str1); trans(str1,str2,n); printf("%s\n",str2); } void trans(char str1[100],char str2[200],int n) { int i; if (n==1) { str2[0]=str1[n-1]; str2[1]=str1[0]; } else { trans(str1,str2,n-1); for (i=2*(n-1)-2;i>=0;i=i-2) str2[i+2]=str2[i]; str2[0]=str1[n-1]; str2[2*n-1]=str1[n-1]; } }