C语言编程练习6:墓碑上的字符

C语言编程练习6:墓碑上的字符

思路:

  用一个新的字符数组存组合后的新字符串,先把第一串字符串的前半部分存入新字符串,然后把第二串字符串全部存入,最后存入第一串字符串的后半部分。

#include <stdio.h>
#include <iostream>
#include <cstring>

using namespace std;

int main()
{
	int n;
	scanf("%d",&n);
	getchar();//取换行符
	while(n--)
	{
		char s1[51],s2[51],s3[102];//定义三个字符串用于接收输入的字符串以及输出的新字符串
		gets(s1);
		gets(s2);
		int l1 = (int)strlen(s1);
		int l2 = (int)strlen(s2);
		int i;
		for(i = 0;i < l1 + l2;i++)//遍历新字符串的长度次
		{
			if(i < l1/2)
			{
				s3[i] = s1[i];//第一串字符串的前半部分进入新字符串
			}
			else if(i >= l1/2 && i < l1/2+l2)
			{
				s3[i] = s2[i-l1/2];//第二串字符串全部进入新字符串
			}
			else
			{
				s3[i] = s1[i-l2];//第一串字符串后半部分进入新字符串
			}
		}
		s3[i] = '\0';//结束新字符串
		puts(s3);
	}
	return 0;
}

 

上一篇:无缝迁移!数亿MySQL数据七步走到MongoDB


下一篇:20201231-成信大-C语言程序设计-20201学期《C语言程序设计B》平时自主学习-跟踪调试题参考