C语言编写程序,用插入法将10个数进行从大到小排序

供稿:hz-xin.com     日期:2025-01-14
编写程序输出十个同学C语言成绩,并从大到小排序

# include
void main()
{
float a[10],k;
int i,j;
for(i=0;i<=9;i++)
scanf("%f",&a[i]);
for(i=0;i<=9;i++)
for(j=i+1;j<=9;j++)
if (a[i]>a[j])
{
k=a[i];
a[i]=a[j];
a[j]=k;
}
for(i=0;i<=9;i++)
printf("%f ",a[i]);
}

#include
int main()
{ int t[9]={1,3,5,7,9,11,13,15,17};

int start=0,end=8,c,mid; //start表示查找区间开始的位置,end是查找区间的最末位置

scanf("%d",&c);
while(start<=end)
{
mid=(start+end)/2;

if(c==t[mid])
{
printf("%d,%d",t[mid],mid);
break;
}
else if(c>t[mid])
start=mid+1; // 如果要查找的数字大于中间数,这个时候开始的位置要从中间位置加一

else end=mid-1; //如果查找的数字小于中间数,这个时候结束的位置从要中间减一
}
if(a>b)
printf("无此元素");

system("pause");

return 0;

}

#include<stdio.h>

void main()

{

 int a[11],n,i,j;

 printf("Please Input 10 Numbers:
");

 for(i=1;i<=10;i++)

   scanf("%d",&a[i]);

 for(i=2;i<=10;i++)

 {

  a[0]=a[i];

  for(j=i-1;a[j]>a[0];j--)

    a[j+1]=a[j];

  a[j+1]=a[0];

 }

 for(i=1;i<=10;i++)

   printf("%d ",a[i]);

 printf("
");

}





插入法C语言
整个过程需要进行n-1次插入操作,以将所有元素排序。在有序序列中寻找插入位置时,可以从有序序列的最后一个数往前找,同时向后移动元素以准备插入空间。这种算法通常用于对小规模数据进行排序,或在部分已排序的数据基础上进行调整。下面是一个用插入排序法对10个整数进行降序排序的示例源代码:c#include ...

直接插入法 有一维数组,将10个数存放其中,对其用直接插入法排序实现升序...
void main(){ int a[10]={1,5,3,2,4,9,0,7,8,6},b[10];int i,j,temp;for(i=0;i<10;i++){ b[i]=a[i];for(j=i-1;j>=0;j--){ if(b[j]>b[j+1]){ temp=b[j+1];b[j+1]=b[j];b[j]=temp;} } } for(i=0;i<10;i++){ printf("%d ",b[i])...

c语言10个数小到大插入法排序
for(i=1;i<=10;i++) {p=&r[i];printf("form min to max the NO: %d value=%d\\n",i,*p);} getch();}

高悬赏:C语言题,依次输入10个数,按从大到小的顺序输出(要求用插入法...
{ int a[10];int i, j, k, value;for (i = 0; i < 10; ++i){ scanf ("%d", &value);for (j = 0; j < i; ++j){ \/\/判断小于输入数的第一个数的位置 if (a[j] < value)break;} if (j >= i){\/\/如果移动到了数组的末尾,就将value插入到数组末尾 a[j] = value...

C语言编写程序,用插入法将10个数进行从大到小排序
printf("Please Input 10 Numbers:\\n"); for(i=1;i<=10;i++) scanf("%d",&a[i]); for(i=2;i<=10;i++) { a[0]=a[i]; for(j=i-1;a[j]>a[0];j--) a[j+1]=a[j]; a[j+1]=a[0]; } for(i=1;i<=10;i++) printf("%d ",a[i]); printf("\\n"); } 本回答...

在键盘上输入10个元素,利用插入法降序排列,现输入一个数x,要求插入到...
printf("请输入10个数: \\n");for (i=0;i<10;i++){ printf("第%d个数: ",i+1);scanf("%d",&a[i]);} sort(a);printf("排序后的数组: \\n");for (i=0;i<10;i++)printf("%d ",a[i]);printf("\\n请输入要插入的数x: \\n");scanf("%d",&x);for(i=0;i<10;i++...

C语言题:找出任意10个实数中最大的数及其下标,并将这10个实数按照从大...
写了一下,楼主看看把 include <stdio.h> void main(){ int i;int array[10]={9,8,7,1,2,3,4,5,6,10};\/\/定义时给出初始化 printf("\\n");\/\/输出排序前数组元素 printf("排序前:\\n");for(i=0;i<10;i++){ printf("%4d",array[i]); \/\/格式用%4d } printf("\\n");int...

用c++语言将十个数排序
第一轮:8,10,7,9->8,10,7,9->8,7,10,9->7,8,10,9(交换2次) 第二轮:7,8,10,9->7,8,10,9->7,8,10,9(交换0次) 第一轮:7,8,10,9->7,8,9,10(交换1次) 循环次数:6次 交换次数:3次 上面我们给出了程序段,现在我们分析它:这里,影响我们算法性能的主要部分是循环和交换,显然,...

用直接插入法将12,3,7,4,11,9,8从小到大排序
刚写了一个。。希望有所帮助。。include<stdio.h> include<conio.h> int a[7]={12,3,7,4,11,9,8},i,b[7],j,k;void insert(int i,int j)\/\/执行插入 { for(k=i;k>j;k--)b[k]=b[k-1];b[k]=a[i];} void find(int i)\/\/发现插入口 { for(j=0;ja[i]){ inser...

c语言的两种排序?
1、选择排序法 要求输入10个整数,从大到小排序输出 输入:2 0 3 -4 8 9 5 1 7 6 输出:9 8 7 6 5 3 2 1 0 -4 代码:include<stdio.h> int main(int argc,const char*argv[]){ int num[10],i,j,k,l,temp;\/\/用一个数组保存输入的数据 for(i=0;i<=9;i++){ scanf(...