C++实验6-数组合并
2016-05-25 20:26
501 查看
一、问题及代码
二、运行结果
三、心得体会
本次实验的数组合并比较简单,数组排序要用“冒泡法”,要理解“冒泡法”的原理。
四、知识点总结
冒泡法原理:是将相邻两个数进行比较,把小数调到前面,大数逐渐“下沉”,如此进行一轮后 ,就会把最大的数互换到最后,再进行一轮,则会把第二大的数排在倒数第二的位置上,进行N-1轮后,整个数列即可排好。在这种排序过程中,小数如同气泡一样逐层上浮,而大数逐个下沉。
for(i=0;i<9;i++) //10个数要交换9趟
for(j=0;j<9-i;j++) //每趟相邻两个数交换次数为9-i
if(a[j]>a[j+1]) //相邻两数按指定的升序排列
{temp=a[j];a[j]=a[j+1];a[j+1]=temp;}
/* * 文件名称:关于数组合并的项目 * 作 者:李伟 * 完成日期: 2016 年 5 月 25 日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: * 输入描述: * 问题描述: 用循环和数组来编程,冒泡法来给数组排序 * 程序输出: 合并后的数组 * 问题分析: * 算法设计: */ #include<iostream> using namespace std; int main() { int a[5]={1,3,8,9,10},b[5]={2,3,4,5,6},c[10],i,t,j; cout<<"a数组为:"; for(i=0;i<5;i++) { cout<<a[i]<<" "; } cout<<endl; cout<<"b数组为:"; for(i=0;i<5;i++) { cout<<b[i]<<" "; } cout<<endl; for(i=0;i<5;i++) { c[i]=a[i]; } for(i=0;i<5;i++) { c[i+5]=b[i]; } for(i=0;i<9;i++) for(j=0;j<9-i;j++) { if(c[j]>c[j+1]) { t=c[j]; c[j]=c[j+1]; c[j+1]=t; } } cout<<"合并后的数组为:"; for(i=0;i<10;i++) cout<<c[i]<<" "; cout<<endl; return 0; }
二、运行结果
三、心得体会
本次实验的数组合并比较简单,数组排序要用“冒泡法”,要理解“冒泡法”的原理。
四、知识点总结
冒泡法原理:是将相邻两个数进行比较,把小数调到前面,大数逐渐“下沉”,如此进行一轮后 ,就会把最大的数互换到最后,再进行一轮,则会把第二大的数排在倒数第二的位置上,进行N-1轮后,整个数列即可排好。在这种排序过程中,小数如同气泡一样逐层上浮,而大数逐个下沉。
for(i=0;i<9;i++) //10个数要交换9趟
for(j=0;j<9-i;j++) //每趟相邻两个数交换次数为9-i
if(a[j]>a[j+1]) //相邻两数按指定的升序排列
{temp=a[j];a[j]=a[j+1];a[j+1]=temp;}
相关文章推荐
- 第13周程序阅读(3)纯虚函数
- C++ 公有继承 【GeekBand 第三周】
- C++ 游戏2048
- 蓝桥杯C++B组历届决赛真题
- 第13周阅读程序(2)虚析构函数
- 第13周阅读程序(1)虚函数
- C++作业6
- C++实验6-数组合并
- 第12周项目3-数组类运算符的实现
- C++作业6
- 第12周项目2-Time类中的运算符重载
- C++ 第六次实验-数组合并
- 原创:C++实现的可排序的双向链表
- c++ 中 get() 与 putback()用法
- visual c++ 中的stdafx.h头文件的作用
- C++第6次实验
- C++第6次实验—数组操作
- CallbackOnCollectedDelegate was detected C#调用C++DLL注册函数指针出错解决方案
- ROS_Kinetic_11 ROS程序基础Eclipse_C++(二)
- ROS_Kinetic_11 ROS程序基础Eclipse_C++(二)