
#include <stdioh>
void main()
{
int a[10];
int i,j,t;
for(i=0;i<=9;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
for(j=i+1;j<10;j++)
{
if(a[i]>a[j])
{ /交换从这里开始/
t=a[i];
a[i]=a[j];
a[j]=t;}
} /交换到这里结束/
for(i=0;i<=9;i++)
printf("%d ",a[i]);
printf("\n");/下一次循环时换行/
}
也没有多大的错误
小心点,C是分语句执行的,到了“;”就是一条语句,除非你用“{}”,这样可以将几个语句合并为一条语句。可以简单这么理解。
/选择排序法:从小到大排列10个数并输出/
#include<stdioh>
#define N 10 //可修改输入个数
void main()
{
int i,a[N],t,j;
for(i=0;i<N;i++) scanf("%d",&a[i]); //输入
for(j=1;j<N;j++) //N次比较
for(i=0;i<j;i++) //每趟中比j次
if(a[i]>a[j]) //与a[i]后面的元素进行比较
{
t=a[i];a[i]=a[j];a[j]=t;
}
printf("排序后:\n");
for(i=0;i<N;i++) printf("%d ",a[i]);
printf("\n");
}
#include"stdioh"
struct student
{ int paiming;
int xh;
char xm[20];
int cj[3];
int pjf;
}p[5];
int s[5];
int pjf1(int cj[],int n)
{ int pjf=0;
int i,z=0;
for(i=0;i<n;i++)
z+=cj[i];
pjf=z/3;
return(pjf);
}
int bijiao(int x[],int n)
{
int i,k,max;
max=x[0];
k=0;
for(i=1;i<n;i++)
{if(max<x[i])
{max=x[i];
k=i;}}
printf("%s\t%d\t%d\t%d\t%d\t%d\t",p[k]xm,p[k]xh,p[k]cj[0],p[k]cj[1],p[k]cj[2],p[k]pjf);
x[k]=0;
return(k);
}
void chaxun()
{ char o[20];
int j;
scanf("%s",o);
for(j=0;j<=4;j++)
if(o[0]==p[j]xm[0])
if(o[1]==p[j]xm[1])
if(o[2]==p[j]xm[2])
if(o[3]==p[j]xm[3])
if(o[4]==p[j]xm[4])
if(o[5]==p[j]xm[5])
printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\n",p[j]xm,p[j]xh,p[j]cj[0],p[j]cj[1],p[j]cj[2],p[j]pjf,p[j]paiming);
}
void swap(int n)
{ int j,i,max;
max=0;
for(i=0;i<=4;i++)
if(p[i]cj[n]>max)
{ max=p[i]cj[n];
j=i;
}
printf("%s\t%d\t%d\t%d\t%d\t%d\t%d\n",p[j]xm,p[j]xh,p[j]cj[0],p[j]cj[1],p[j]cj[2],p[j]pjf,p[j]paiming);
p[j]cj[n]=0;
}
void main()
{int i,j,r,cha,q,m,t,y,c,nail=0;
char name[20],a[10],subject[10];
printf("name\t\tnumber\tChinese\tMath\tEnglish\n");
for(i=0;i<=4;i++)
{scanf("%s q%d %d %d %d",p[i]xm,&p[i]xh,&p[i]cj[0],&p[i]cj[1],&p[i]cj[2]);}
for(i=0;i<=4;i++)
s[i]=p[i]pjf=pjf1(p[i]cj,3);
printf("name\t\tnumber\tChinese\tMath\tEnglish\taverage\tpaiming\n");
for(i=0;i<=4;i++)
{
m=bijiao(s,5);
printf("%d\n",i+1);
p[m]paiming=i+1;
}
for(i=0;i<=4;i++)
s[i]=p[i]pjf=pjf1(p[i]cj,3);
printf("if you want to research the number or name,please input 1,then continue input you want to research,else input 0:\n");
scanf("%d\n",&c);
if(c==1)
{
scanf("%d",&r);
printf("paiming\tname\t\tnumber\tChinese\tMath\tEnglish\taverage\n");
for(i=0;i<=4;i++)
if(p[i]xh==r)
printf("%d\t%s\t%d\t%d\t%d\t%d\t%d\n",p[i]paiming,p[i]xm,p[i]xh,p[i]cj[0],p[i]cj[1],p[i]cj[2],p[i]pjf);
}
printf("if you want to research name,please input 1,then input the name,else input 0:\n");
scanf("%d",&cha);
printf("name\t\tnumber\tChinese\tMath\tEnglish\taverage\tpaiming\n");
if(cha==1)
chaxun();
printf("if you want to charge the score\n");
scanf("%s\t%d--%d",a,&t,&y);
printf("paiming\tname\t\tnumber\tChinese\tMath\tEnglish\taverage\n");
if(a[0]=='c')
{for(i=0;i<=4;i++)
{if((t<=p[i]cj[0])&&(p[i]cj[0]<=y))
{nail+=1;
printf("chinese is %d\t%s\t%d\t%d\t%d\t%d\t%d\n",p[i]paiming,p[i]xm,p[i]xh,p[i]cj[0],p[i]cj[1],p[i]cj[2],p[i]pjf);}
}
printf("%s the score people is %d\n\n",a,nail);}
if(a[0]=='m')
{for(i=0;i<=4;i++)
{if((t<=p[i]cj[1])&&(p[i]cj[1]<=y))
{nail+=1;
printf("math is\n%d\t%s\t%d\t%d\t%d\t%d\t%d\n",p[i]paiming,p[i]xm,p[i]xh,p[i]cj[0],p[i]cj[1],p[i]cj[2],p[i]pjf);}
}
printf("%s the score people is %d\n\n",a,nail);}
if(a[0]=='e')
{for(i=0;i<=4;i++)
{if((t<=p[i]cj[2])&&(p[i]cj[2]<=y))
{nail+=1;
printf("english is %d\t%s\t%d\t%d\t%d\t%d\t%d\n",p[i]paiming,p[i]xm,p[i]xh,p[i]cj[0],p[i]cj[1],p[i]cj[2],p[i]pjf);}
}
printf("%s the score people is %d\n\n",a,nail);}
scanf("%s",subject);
printf("the manager's order is\n ");
if(subject[0]=='c')
for(i=0;i<=4;i++)
swap(0);
if(subject[0]=='m')
for(i=0;i<=4;i++)
swap(1);
if(subject[0]=='e')
for(i=0;i<=4;i++)
swap(2);
getch();
}
以上就是关于c语言排序程序全部的内容,包括:c语言排序程序、c语言 若对任意n个数进行排序,应该如何 *** 作、C语言的排序程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)