1樓:風翼殘念
#include
void sort(float *a, int n)
int i,j,tmp;
for(i=0; ifor(j=0; jif(a[j]>a[j+1])
tmp = a[j];
a[j] = a[j+1];
a[j+1] = tmp;
}void main()
float a[5];
int i;
printf("請輸入五個數(逗號隔開):");
scanf("%f,%f,%f,%f,%f",&a[0],&a[1],&a[2],&a[3],&a[4]);
sort(a,5);
printf("排序後為:");
for(i=0; i<5; i++)
printf("%.2f ",a[i]);
printf("\n");
或者三個數的。
void sort(int *a, int *b, int *c)
int tmp;
if(*a>*b)
對於這樣的自定義sort函式,可以按照定義的規範來呼叫。
二、c語言有自有的qsort函式。
功 能: 使用快速排序例程進行排序。標頭檔案:stdlib.h
原型:void qsort(void *base,int nelem,int width,int (*fcmp)(const void *,const void *));
引數:1、待排序陣列首地址。
2、陣列中待排序元素數量。
3、各元素的佔用空間大小4 指向函式的指標,用於確定排序的順序,這個函式必須要自己寫比較函式,即使要排序的元素是int,float一類的c語言基礎型別。
2樓:小周愛嘮叨
1、在開頭處定義了兩個指標變數point_1和point_2。但此時他們並未指向任何一個變數,只是提供兩個指標變數,規定他們可以指向整形變數,至於指向哪一個整形變數,要在程式語句中指定。程式第6,7兩行的作用就是使point_1指向a,point_2指向b,此時point_1的值為&a(即a的地址),point_2的值為&b。
2、第10行輸出*point_1和*point_2的值,其中的“*”表示“指向”。*point_1表示“指標變數point_1所指向的變數”,也就是變數a。*point_2表示“指標變數point_2所指向的變數”,也就是變數b。
從執行結果來看他們也就是100和10.
3、程式中有兩處出現*point_1和*point_2,但是兩者含義不同。程式第5行的*point_1和*point_2表示定義兩個指標變數*point_1和*point_2。它們前面的“*”只是表示該變數是指標變數。
程式最後10行中的printf函式中的*point_1和*point_2則表示指標變數point_1和point_2所指向的變數。
3樓:匿名使用者
自定義一個交換兩個數的函式
對5個數進行冒泡法
迴圈執行函式就行了
4樓:系榆
void bubble_sort(int array,int n)}if(1 == flag)
}return;
}呼叫時,n的值為5就可以了,你可以將輸入的資料儲存到長度為5的陣列裡面,然後呼叫這個排序方法,希望可以幫到你,望採納
4個數比較大小,結果從小到大排列,用c語言怎麼編?
5樓:育知同創教育
#include
void main()
if (a>c)
if (a>d)
if(b>c)
if(b>d)
if(c>d)
printf("%5.2f,%5.2f,%5.2f,%5.2f\n",a,b,c,d);
}運用氣泡排序演算法,小的數字不斷上升,最上面的是最小的,大的數字下沉,最後就依次輸出就可以了。
6樓:似水流年
冒泡 排序演算法!!
#include
void main()
.for( i=1;i<=3;i++)}}//輸出陣列中的元素
for(int j=0;j<=3;++j)}上機試一試吧!!!
7樓:
定義一個兩個數的比較函式
int max()
}再來個for()迴圈就行了
8樓:市娜符桃
int[4]
info;
for(int
j=0;j<4;j++)}}
c語言如何用呼叫函式的方法把5個數字從小到大排序?
9樓:風吹的小羊
1、在開頭bai處定義了兩個du
指標變數point_1和point_2。但此時他zhi們並未指向任何dao一個回變數,只是提供兩答
個指標變數,規定他們可以指向整形變數,至於指向哪一個整形變數,要在程式語句中指定。程式第6,7兩行的作用就是使point_1指向a,point_2指向b,此時point_1的值為&a(即a的地址),point_2的值為&b。
2、第10行輸出*point_1和*point_2的值,其中的“*”表示“指向”。*point_1表示“指標變數point_1所指向的變數”,也就是變數a。*point_2表示“指標變數point_2所指向的變數”,也就是變數b。
從執行結果來看他們也就是100和10.
3、程式中有兩處出現*point_1和*point_2,但是兩者含義不同。程式第5行的*point_1和*point_2表示定義兩個指標變數*point_1和*point_2。它們前面的“*”只是表示該變數是指標變數。
程式最後10行中的printf函式中的*point_1和*point_2則表示指標變數point_1和point_2所指向的變數。
c語言程式設計: 從使用者輸入10個整數,對其按照從小到大的順序排序,並輸出結果。
10樓:凌亂心扉
//要求任意輸入10個數,然後按從小到大順序輸出#include
int main()
for(i=0;i<9;i++)}}
printf("排列後順序為:");
for(i=0;i<10;i++)
printf("\n");
return 0;}
11樓:匿名使用者
要求任意輸入10個數,然後按從小到大順序輸出#include
int main()
for(i=0;i<9;i++)}}
printf("排列後順序為:");
for(i=0;i<10;i++)
printf("\n");
return 0;}
12樓:匿名使用者
#include
int main(void)
for(i = 0;i < 10;i++)}c = arr[i];
arr[i] = min;
arr[mini] = c;
}for(i = 0;i < 10;i++)}望採納。
13樓:千年菡
#include
int main(void)
//輸入·十個數
for (j = 1; j <= 9; j++) // 冒泡法排序}}
printf("從小到大排\n");
for (i = 0; i < 10; i++)return 0;}
14樓:匿名使用者
先定義一個陣列存這十個數,要看你用什麼演算法了,根據不同演算法進行篩選
15樓:匿名使用者
#include<stdio.h>
int main()bai
c語言:呼叫自定義排序函式sort,對輸入的n個數進行從小到大輸出。
16樓:
p[i]就是指標p指向的陣列的下標為i的元素。
c語言,寫一個函式,使用冒泡法對輸入的6個整數進行從小到大的排序 10
17樓:
#include void sort(int a,int n) } } } int main() ; sort(a,10); int i; for(i=0;i<10;i++) getchar(); return 0; }
c語言遞迴求階乘,c語言怎麼用遞迴呼叫函式的方法求n的階乘?
問明 舉例 用遞迴方法求n include int main int n int y printf input a integer number scanf d n y fac n printf d d n n,y return 0 int fac int n int f if n 0 printf...
求教C語言的函式的遞迴呼叫,c語言函式遞迴呼叫看不懂了,求教
答案是16 fit 6 呼叫函式 fit 5 fit 4 繼續呼叫 fit 4 fit 3 fit 3 fit 2 繼續呼叫 fit 3 fit 2 fit 2 fit 1 fit 2 fit 1 fit 2 呼叫fit 2 fit 1 fit 2 fit 2 fit 1 fit 2 fit 1 f...
C語言中,主函式中呼叫隨機數函式,保證每次產生的隨機數不重複,該如何弄呢
其實只要做一次種,然後再呼叫rand 就能產生不同的結果了,不用每次呼叫專rand 之前都用srand 做種的也就屬是說你那個程式可以改為 srand time 0 for a 0 a 200 a 如果你利用 srand time null 產生種子的話 可以這麼做 include include ...