在已知数组中 插入一个数
#include <stdio.h>
//#define N 5
int main()
{
int i,j,num,end,tmp1,tmp2;
int a[6]={10,40,50,60,80};
printf("Array a:\n");
for(i=0;i<5;i++)
printf("%4d",a[i]);
printf("\n");
printf("Insert data:\n");
scanf("%4d",&num);
end=a[4];
if(end<num)
{
a[5]=num;
}
else
{
for(i=0;i<5;i++)
{
if(a[i]>num)
{
tmp1=a[i];
a[i]=num;
for(j=i+1;j<6;j++)
{
tmp2=a[j];
a[j]=tmp1;
tmp1=tmp2;
}
break;
}
}
}
printf("Now array a:\n",a[i]);
for(i=0;i<6;i++)
printf("%4d",a[i]);
printf("\n");
return 0;
}
我是 初学者 有些地方看的不太懂 就是 交换哪一步? 希望 学长们 能够帮我解释解释 这个程序
//#define N 5
int main()
{
int i,j,num,end,tmp1,tmp2;
int a[6]={10,40,50,60,80};
printf("Array a:\n");
for(i=0;i<5;i++)
printf("%4d",a[i]);
printf("\n");
printf("Insert data:\n");
scanf("%4d",&num);
end=a[4];
if(end<num)
{
a[5]=num;
}
else
{
for(i=0;i<5;i++)
{
if(a[i]>num)
{
tmp1=a[i];
a[i]=num;
for(j=i+1;j<6;j++)
{
tmp2=a[j];
a[j]=tmp1;
tmp1=tmp2;
}
break;
}
}
}
printf("Now array a:\n",a[i]);
for(i=0;i<6;i++)
printf("%4d",a[i]);
printf("\n");
return 0;
}
我是 初学者 有些地方看的不太懂 就是 交换哪一步? 希望 学长们 能够帮我解释解释 这个程序
...全文


