这题按照正常的思路来写 的话就行

但需要考虑到一个问题就是当m1,n1为0 0的时候的这种特殊期况
当n1为0的时候 我们应该直接输出数组a   还有就是要注意格式的问题
两个数之间间隔一个逗号  但是最后一个数不需要


参考代码:

#include<iostream>
using namespace std;
int a[1006];
int b[1006]; 
void f(int a[],int b[],int m,int n)
{

	for(int i=0;i<n;i++)
	{
		a[m++]=b[i];
	}
	for(int i=0;i<m;i++)
	{
		cout<<a[i];
		if(i<m-1)
		cout<<",";
	}
	cout<<endl;
}
int main()
{
	//freopen("data.in.txt","r",stdin); 
	int m,n,m1,n1;
	cin>>m>>n;
	for(int i=0;i<m;i++)
	{
		cin>>a[i];
	}
	for(int i=0;i<n;i++)
	{
		cin>>b[i];
	}
	cin>>m1>>n1;
	if(n1==0)
	{
		for(int i=0;i<m;i++)
		{
			if(i<m-1) cout<<a[i]<<",";
			else
			cout<<a[i];
		}
	}
	else
	f(a,b,m1,n1);
	return 0;
	
}


点赞(7)
 

0.0分

1 人评分

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

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

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

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

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

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

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

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

评论列表 共有 2 条评论

徐盛一 5年前 回复TA
@杨思宇 你漏掉了m1=0的情况
杨思宇 5年前 回复TA
#include <iostream>
using namespace std;
int main(){
	int a[10001];
	int b[10001];
	int m,m1,n1,n;
	cin>>m>>n;
	for(int i=0;i<m;i++){
		cin>>a[i];
	}
	for(int i=0;i<n;i++){
		cin>>b[i];
	}
	cin>>m1>>n1;
	if(n1==0){
		for(int i=0;i<m1;i++){
			if(i<m1-1){
				cout<<a[i]<<",";
			}
			else
			cout<<a[i];
		}
	}
	else{
	
	for(int i=0;i<m1;i++){
		cout<<a[i]<<",";
		
	}
	for(int i=0;i<n1;i++){
		if(i<n1-1)
		cout<<b[i]<<",";
		else
		cout<<b[i];
	}
}
	
	return 0;
} 
请问一下我这个漏掉了那种情况