#includestdio.h
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),張掖企業(yè)網(wǎng)站建設(shè),張掖品牌網(wǎng)站建設(shè),網(wǎng)站定制,張掖網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,張掖網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
void?Sort(int?*a,int?n)?{
int?*p,*q,*v,t;
for(p?=?a;p??a?+?n?-?1;++p)?{
v?=?p;
for(q?=?p?+?1;?q??a?+?n;?++q)
if(*v??*q)?v?=?q;
if(*p?!=?*v)?{
t?=?*p;
*p?=?*v;
*v?=?t;
}
}
}
void?Show(int?*a,int?n)?{
int?i;
for(i?=?0;?i??n;?++i)
printf("%d?",*(a?+?i));
printf("\n");
}
int?main()?{
int?a[]?=?{23,12,54,89,66,59,57,48,91,20,31};
int?n?=?sizeof(a)/sizeof(a[0]);
printf("排序前:\n");
Show(a,n);
printf("排序后:\n");
Sort(a,n);
Show(a,n);
return?0;
}
排序沒有問題,但是你在打印的時(shí)候出錯(cuò)了
for(i=0;im;i++)
printf("%d",a[i]);????#47;#47;這里打印的是數(shù)組元素a[i]的地址,應(yīng)改為printf("%d"?,?a[i]);
printf("#92;n");
滿意請采納?。?!
源程序代碼如下:
#define _CRT_SECURE_NO_WARNINGS//VS環(huán)境下需要,VC不需要
#includestdio.h//頭文件;
int main()
{
int i = 0;
int j = 0;
double temp = 0;
double a[10] = { 0 };//定義三個(gè)變量和一個(gè)長度為10的數(shù)組;
printf("請輸入十個(gè)數(shù):\n");//顯示“請輸入十個(gè)數(shù)”
for (i = 0; i 10; i++)
{
scanf("%lf", a[i]);//從鍵盤上輸入十個(gè)數(shù)送到數(shù)組;?
}
for (i = 1; i 10; i++)//for循環(huán),進(jìn)行9次循環(huán);
{
for (j = i - 1; j = 0; j--)//for循環(huán),在每次大的循環(huán)中,a[i]從a[1]依次與它前面的數(shù)比較; ?
{
if (a[j + 1] a[j])
{
temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;//如果a[j + 1]a[j],則把這兩個(gè)數(shù)組元素互換,目的把最大的數(shù)放到前邊;
}
else
{
break;
}
}
}
for (i = 0; i 10; i++)
{
printf("% lf\n", a[i]);//輸出排好順序的十個(gè)數(shù);
}
return 0;//返回值為0;
}
程序運(yùn)行結(jié)果如下:
擴(kuò)展資料:
其他實(shí)現(xiàn)方法如下:
#includestdio.h
int mysort(int *a, int n)
{
int i, j, temp;
for (i = 0; i n - 1; i++)
{
for (j = 0; j n - 1 - i; j++)
{
if (a[j] a[j + 1])
{
temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;
}
}
}
return 0;
}
int main()
{
int a[10];
int i, j;
printf("input 10 numbers:\n");
for (i = 0; i 10; i++)
{
printf("the number%d is:", i + 1);
scanf("%d", a + i);
fflush(stdin);
}
mysort(a, 10);
for (i = 9; i = 0; i--)
printf("%3d", a[i]);
printf("\n");
return 0;
}