C++第六次实验

一、问题及代码

/*
* 文件名称:数组合并
* 作    者:傅智杰
* 完成日期:  2016年    5月   19日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:通过不断地对比数组A和数组B中的数,由小到大的输入进数组C中
* 输入描述:输入一个数组A和一个数组B
* 问题描述:通过设计for循环结构以及if语句的使用来实现数组合并
* 程序输出:合并后有序的新数组
* 问题分析:不断通过对比把两个数组中的数由小到大输入进新的数组中
* 算法设计:1.输入两个数组
            2.比对两个数组中的数,得出最小数;
            3.输出最小数到新数组中,然后剔除最小数继续比对,得到第二小数
            4.输出第二小数到新数组,以此类推
            5.输出新的数组
#include<iostream>
using namespace std;
int main()
{
	int a[5]={1,3,8,9,10},b[5]={2,3,4,5,6},i=0,j=0,c[10],k=0,m,n;
	for(m=0;m<10;m++)
	{ 
	        if(a[j]<=b[i])
			{
				c[k]=a[j];
			        k++;
				j++;
			}
			else
			{
				c[k]=b[i];
				k++;
				i++;
			}
	        if(i>4)
			{
				for(m=j;m<5;m++)
				{
				    c[k]=a[j];
					j++;
				    k++;
				}
			}
			if(j>4)          
			    for(m=i;m<5;m++)
				{
					c[k]=b[i];
					i++;
					k++;
				}
	}
	for(k=0;k<10;k++)
	{
		cout<<c[k]<<" ";
	}
	return 0;
}


 

二、运行结果

三、心得和体会

这一个数组题目令我更能灵活应用循环和条件语句的巧妙结合,不过一开始还是要不断地进行修改和调试才能正确输出结果,我还需要不断地练习。

四、知识点归纳

for循环语句以及条件语句的结合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值