C++第六次实验-项目1
2016-05-26 00:53
260 查看
* 文件名称:数组操作 * 作 者: 陈翰丰 * 完成日期: 2016 年 5 月 25 日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分:数组和循环语句 * 输入描述: * 问题描述,利用冒泡法排序删减元素, * 程序输出: * 问题分析: * 算法设计: //【项目1:数组操作】定义一个不重复的有初值的10个元素的整数数组a,利用冒泡法对数组a排序后完成以下操作(写在一个程序中) //1。从键盘中输入一个数x,删除a数组中值为x的数组元素; //2。从键盘中输入一个数x,将x插入到a数组后数组a依然有序; #include<iostream> using namespace std; int main() { const int M=10; int i,j,k,t,locate,x,y,a[M]={3,6,7,5,4,2,10,11,8,1}; cin>>a[M]; { for(i=0;i<M-1;i++) for(j=0;j<M-i-1;j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } for(i=0;i<M;i++) { cout<<a[i]<<" "; } cout<<endl; cout<<"从键盘中输入一个数:"; cin>>x; {for(j=0;j<M;j++) if(a[j]==x) break; for(locate=j;j<M;j++) a[j]=a[j+1]; } for(j=0;j<M-1;j++) cout<<a[j]<<" "; cout<<endl; cout<<"再从键盘中输入一个数:"; cin>>y; for(i=0;i<M-1;i++) if(a[i]>y) break; for(k=M-1;k>i;k--) a[k]=a[k-1]; a[i]=y; for(i=0;i<M;i++) cout<<a[i]<<" "; cout<<endl; }
运行结果:
心得体会:
充分了解了如何在循环语句中换行,以及在冒泡法的原理。