问题描述
- C中对排序好了后的数组中插入一个数在输出
-
用冒泡排序法对输入的20个数进行降序排序存入数组中,然后在输入一个数插入到该数组,要求保持原序不变输出该数组的21个数!
解决方案
int main(void)
{
int i,j,array[20],temp;
printf("Input 20 integer:"); /*输入20个整数*/
for(i=0;i<20;i++)
scanf("%d",&array[i]);
printf("
");
for(i=0;i<20;i++) /*用双重循环,冒泡法排序*/
for(j=i;j<20;j++)
if(array[i]<array[j])
{temp=array[i];array[i]=array[j];array[j]=temp;}
for(i=0;i<20;i++) /*输出排序后的数组元素*/
printf("%d ",array[i]);
printf("
Input integer:"); /*输入一个整数*/
scanf("%d",&temp);
for(i=0;i<20&&temp<=array[i];i++) /*在排序后的数组中查找*/
if(temp==array[i])
printf("array[%d] is needed.
",i); /*在数组中有可能有相等的元素*/
if(temp!=array[i-1])
printf("array[] have not the integer.");/*数组中没有所输入的数*/
getch();
return 0;
}
解决方案二:
将一个数插入到数组中
时间: 2024-09-23 12:21:14