解题思路:

   1、定义两个字符数组,一个用来接受主函体中输入的字符数组,一个用来接受主函体中输出的字符数组。

   2、在子函数体中,将接受主函体中的输入字符数组,反序的放置在接受主函中输出的字符数组中。

   3、通过函数的调用,实现字符数组在主函数体输入和输出。

代码如下:

#include<stdio.h>
#include<string.h>

int box(char a[20],char b[20])//子函数体中定义一个输入和一个输出的字符数组。

{ 
	
	int i,j,k=0;
	
	j=strlen(a);//取输入字符数组的长度


	i=0;//字符数组中的第一个字符。
	k=j-1;//字符数组中最后一个字符。
	
	while(i<j)
	{
		b[k]=a[i];//将第一个字符与最后一个字符进行交换。
		i++;//第一个字符后移。
		k--;//最后一个字符前移。
	}


	return 0;
}

int main()
{
	char c[20];
	char d[20];
	int i,l;
	gets(c);
    l=strlen(c);
    box(c,d);//调用子函数进行输入,同时把需要输出的字符数组传过去进行交换。
    
	for(i=0;i<l;i++)//输出交换后字符数组。
	{
		printf("%c",d[i]);
	}printf("\n");   
	return 0;

}


点赞(16)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

帝国时代 7年前 回复TA
不用那么复杂