C++实验6—数组操作
2016-05-21 22:07
615 查看
一、问题及代码
二、运行结果
三、心得体会
使用冒泡法等算法可以比较好的解决一些问题,同样对数据的删除与插入也要讲究程序算法的科学性。
四、知识点总结
1、对n个数字进行冒泡法排序,一共要进行n-1轮排序,大的数据自然就会排到后面去
2、删除数据时先把要删除的数据找出来,然后将后面的数据都往前移一位
3、插入数据时先找出第一个比要插入的数大的数,然后将该数以后的数都往后移一位,空出来的位即可将数据插入
/* * 文件名称:Ex6-1.cpp * 作 者:吴杰 * 完成日期:2016 年 5 月 21日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: 数组排序及删除与插入数据 * 输入描述:无 * 问题描述:通过冒泡法进行排序 * 程序输出:输出有顺序的一组数 * 问题分析:略 * 算法设计:略 */ #include<iostream> using namespace std; int main() { int A[10] = {10,5,2,9,4,3,7,8,1,6},i,j,a,x; for(i=0; i<9; i++) for(j=0; j<9-i;j++) { if(A[j] > A[j+1]) { a = A[j]; A[j] = A[j+1]; A[j+1] = a; } } cout<<"冒泡法排序为:"; for(i=0; i<10; i++) { cout<<A[i]<<" "; } cout<<endl<<"请输入要删除的数:"; cin>>x; for(i=0;i<10;i++) if(A[i]==x) break; for(j=i;j<9;j++) A[j]=A[j+1]; for(i=0;i<9;i++) cout<<A[i]<<" "; cout<<endl<<"请输入要插入的数:"; cin>>x; for(i=0;i<9;i++) if(A[i]>x) break; for(int k=9;k>i;k--) A[k]=A[k-1]; A[i]=x; for(i=0;i<10;i++) cout<<A[i]<<" "; cout<<endl; return 0; }
二、运行结果
三、心得体会
使用冒泡法等算法可以比较好的解决一些问题,同样对数据的删除与插入也要讲究程序算法的科学性。
四、知识点总结
1、对n个数字进行冒泡法排序,一共要进行n-1轮排序,大的数据自然就会排到后面去
2、删除数据时先把要删除的数据找出来,然后将后面的数据都往前移一位
3、插入数据时先找出第一个比要插入的数大的数,然后将该数以后的数都往后移一位,空出来的位即可将数据插入
相关文章推荐
- C++作业6
- C语言 pthread的使用
- -i++与i的值问题
- c++拾遗-----函数探幽
- 【VS开发】C++异常处理操作
- C++中的name mangling
- GeekBand c++學習筆記之二(帶指針的class中的必須要學的-Big Three法則)
- 2015第六届蓝桥杯B组C/C++决赛题解【2.5.6待解><】
- C++ 中类模板
- C++primer_第五章_语句_学习跟踪
- C++之命名空间
- C++静态库基本编程
- C++primer_第四章_表达式_学习跟踪
- 九度 OJ 1020:最小长方形
- C++函数名的修饰规则
- C语言函数内static关键字详解
- C++ #define用法总结
- 九度 OJ 1046:求最大值
- 多重部分和问题
- C++、python 写类似全排列算法