有序数组插入
#include <stdio.h>#include <stdlib.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
int b[20],num[20];
int i,x,a,n,k;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&num[i]);
}
scanf("%d",&x);
for(i=0;i<n+1;i++)
{
if(x>=num[i])
b[i]=num[i];
else if(x<num[i])
{
k=i;
b[i]=x;
b[i+1]=num[i];
break;
}
}
for(i=n;i>k+1;i--)
{
b[i]=num[i-1];
}
for(i=0;i<n+1;i++)
{
printf("%d ",b[i]);
}
return 0;
}
题目:已有一个按升序排序的数组,含n个元素。输入整数x,将x插入数组中,使数组元素仍按升序排列。请使用数组实现。
输入
输入包含三行:
第一行是数组元素个数n(1 < n < 20)。
第二行是数组n个元素,相邻两项之间用一个空格隔开。
第三行是待插入的元素x。
输出
输出插入后数组的所有元素,相邻两项之间用一个空格隔开。
问题:大佬们这个代码为什么没有满分