一、问题及代码
/*
* 文件名称: change.cpp
* 作 者: 王聪
* 完成日期: 2016 年 5月 19 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:对数组进行增减变换。
* 输入描述:无
* 问题描述:略
* 程序输出:输出变化后的数组
* 问题分析:略
* 算法设计:for语句,递增和递减变换
*/
#include<iostream.h>
void main()
{
int i,j,k,x,y,a[10]={9,-25,6,34,25,-12,46,-8,0,-1};
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
{
if(a[j]>a[j+1])
{
k=a[j];
a[j]=a[j+1];
a[j+1]=k;
}
}
cout<<"冒泡法排序后:"<<endl;
for(i=0;i<10;i++)
cout<<a[i]<<" ";
cout<<"\n"<<"请输入其中的一个数x:";
cin>>x;
for(i=0;i<10;i++)
{
if(a[i]==x)
k=i;
}
for(i=k;i<9;i++)
a[i]=a[i+1];
for(i=0;i<9;i++)
cout<<a[i]<<" ";
cout<<"\n"<<"请再输入一个任意整数:";
cin>>y;
for(i=0;i<9;i++)
{
if(a[i]>=y&&a[i-1]<y)
k=i;
}
if(a[9]<y)
k=10;
for(i=9;i>k;i--)
a[i]=a[i-1];
a[i]=y;
for(i=0;i<10;i++)
cout<<a[i]<<" ";
}
二、运行结果
三、心得体会
冒泡法的使用挺有趣的,先比较后排列,从确定的某处开始变动,让数据一个一个跟着变。
四、知识点总结
主要的知识点是for语句,if语句和数组的使用,用递增和递减的方法变动数据并改变或去掉其中的某个值。