下题应如何用C++编程

来源:百度知道 编辑:UC知道 时间:2024/05/31 13:30:59
“已知一个整形数组a[10]={1,3,8,12,34,56,87,101},已经按升序排列,请在其中输入一个数,仍保持该数组有效”

#include<stdio.h>
int main()
{
int i,b[10],a[10]={1,3,8,12,34,56,87,101};
int n;
scanf("%d",&n);
for(i = 0;i < 8;i ++) {
b[i] = a[i];
}
for(i = 0;i < 8;i ++) {
if(b[i] > n) {
a[i] = n;
break;
}
}
i ++;
while(i<9) {
a[i] = b[i-1];
i ++;
}
for(i = 0;i < 9;i ++) printf("%d ",a[i]);
printf("\n");

}

int m;
a[10]={1,3,8,12,34,56,87,101}
cin>>m;//输入m
if(m>a[7]){//如果大于101,则就就夹在a[8]
a[8]=m;
}
else{//否则
for(int i=0;i<8;i++){
if(a[i]>m){//大于a[i],就将a[i]后的数后移
for(int j=8;j>i;j--){
a[j]=a[j-1];
}
a[i]=m;//将m 插入a[i]处
break;
}
}
}
前面和后面的代码,就不写了!

#include <iostream>
using namespace std;

int main()
{
int a[10]={1,3,8,12,34,56,87,101,0};