【项目1:数组操作】定义一个不重复的有初值的10个元素的整数数组a,利用冒泡法对数组a排序后完成以下操作(写在一个程序中)
1。从键盘中输入一个数x,删除a数组中值为x的数组元素;
2。从键盘中输入一个数x,将x插入到a数组后数组a依然有序(在第一题基础上完成);
一。问题及代码
/*
* 文件名称:数组操作
* 作 者: 李欣竹
* 完成日期: 2016 年 5 月 23 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:数组及循环语句
* 输入描述: 输入十个数字
.* 问题描述: 排序,删除及添加
.* 程序输出: 输出排序,删除及添加
.* 问题分析:
.* 算法设计:
.*/
#include<iostream>
using namespace std;
int main()
{
int a[10],i,j,k,t,b,c;
cout<<"请输入十个不重复的数字:";
for(i=0;i<9;i++)
cin>>a[i];
for(i=0;i<9;i++)
{
for(j=0;j<9-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
cout<<"数字排序后为:";
for(i=0;i<9;i++)
cout<<a[i]<<" ";
cout<<endl;
cout<<"输入要删去的数字:";
cin>>b;
for(i=0;i<9;i++)
{
if(b==a[i])
{
for(k=i;k<9;k++)
a[k]=a[k+1];
cout<<"删去该数字之后的数组为:";
for(i=0;i<9;i++)
cout<<a[i]<<" ";
cout<<endl;
break;
}
if(i==9)
cout<<"该数组没有要删除的数字。"<<endl;
}
cout<<"输入要添加的数字:";
cin>>c;
for(i=8;i>=0;i--)
{
if(c>a[i])
{
for(k=8;k>i;k--)
a[k+1]=a[k];
a[i+1]=c;
break;
}
}
cout<<"添加该数字之后的数组为:";
for(i=0;i<9;i++)
cout<<a[i]<<" ";
cout<<endl;
}
二。运行结果
三。问题:注意数组分离的时候的定义与循环
四。感想:分离数组需要多多练习,还是很不熟练