色天下一区二区三区,少妇精品久久久一区二区三区,中文字幕日韩高清,91精品国产91久久久久久最新毛片

首頁 > 新疆 > 克拉瑪依 > c語言數(shù)組排序,c語言中的數(shù)組排序

c語言數(shù)組排序,c語言中的數(shù)組排序

來源:整理 時間:2023-05-13 12:23:29 編輯:好學(xué)習(xí) 手機版

本文目錄一覽

1,c語言中的數(shù)組排序

#include#include int numSort(int *a,int count_num) for(j=count_num-1;j>0;j--) for(i=j-1;i>=0;i--) if(a[j] > a[i]) min=i; j=0; break; } if(min==-1) return 0; for(i=min+1;i for(j=i+1;j if(a[j] < a[i]) a[i]=a[j]; a[j]=temp; } return 1;}void main() int i,j,count_num; printf("個數(shù):"); scanf("%d",&count_num); a=(int *)malloc(sizeof(int)*count_num); for(j=0;j scanf("%d",a+j); } if(numSort(a,count_num)) for(i=0;i printf("%d ",a[i]); } else printf("\n不滿足條件");}
int i=n-1, j, temp;for (; i>0; --i) if (a[i] < a[i+1]) break;}for (j=1; i+j < n-j; ++j) temp = a[i+j]; a[i+j] = a[n-j]; a[n-j] = temp;}for (j=i+1; j if ( a[j] > a[i]) temp = a[j]; a[j] = a[i]; a[i] = temp; break; }}
樓上速度好快 我剛有思路 你都寫好了 樓上 如果題目給的數(shù)組元素?fù)Q下順序 你的就求不出來了

c語言中的數(shù)組排序

2,C語言數(shù)組排序

這是倒序,不是排序。下面代碼運行結(jié)果:輸入n: 6輸入6個數(shù): 12 15 29 38 220 44倒序后: 44 220 38 29 15 12 #include <stdio.h>#define N 256void inverse(int *in, int *out, int n) int i; for(i = 0; i < n; i ++) out[i] = in[n-1-i]; }}int main() int in[N]; int out[N]; int n = 0; int i = 0; printf("輸入n: "); scanf("%d", &n); if(n > N) n = N; printf("輸入%d個數(shù): ", n); for(i = 0; i < n; i ++) if(scanf("%d", in+i)!=1) break; } n = i; inverse(in, out, n); printf("倒序后: "); for(i = 0; i < n; i ++) printf("%d ", out[i]); } printf("\n"); return 0;}
/* 寫好了,冒泡排序 然后用變量定義數(shù)組 很好理解,你看看吧 如果有啥問題追問一下 哇,寫完了 我飄~ */ #include #include int main(void) { long box=0l; int n=0, i1=0, i2=0; printf("輸入數(shù)組元素個數(shù):4"); scanf("%d",&n); long array[n]; for(i1=0;i1",i1+1); scanf("%d",&array[i1]); } for(i1=0;i10;i1--,i2++) printf("%3d>%d\n",i2,array[i1]); getch(); return 0; }
用鏈表吧 回去幫你寫
簡單啊,說白了就是找“最大值”和“最小值”,然后分別用變量存起來,再進(jìn)行數(shù)組元素的移位即可。當(dāng)然數(shù)據(jù)結(jié)構(gòu)用“鏈表”也可以,但都差不多......................還不如自己一個可變長數(shù)組。
void paixu(double a[],int N)double temp;int i,j; for(i=0;i<N;i++) for(j=i+1;j<N;j++) if(a[i]>a[j]) }}
這個不是排序,而是逆序輸出,沒學(xué)過鏈表用自動增長的棧來實現(xiàn)好了,只要內(nèi)存夠大,可以輸入任意個整數(shù):#include <stdio.h>#include <stdlib.h>#include <string.h>#define INC_SIZE 5 /* 每次棧自動增長的大小 *//* 棧結(jié)構(gòu) */typedef struct INTEGER_STACK int* value; int size; /* 棧大小 */ int pos; /* 棧頂位置 */} Stack;/* 初始化棧 */void initialize(Stack* s) if (s->size <= 0) s->size = INC_SIZE; s->value = (int*)malloc(sizeof(int) * s->size); /* TODO: error check */ s->pos = -1;}/* 銷毀 */void destroy(Stack* s) free(s->value); s->value = NULL; s->size = 0;}/* 擴充棧 */void expand(Stack* s, int new_size) if (new_size > s->size) s->value = (int*)realloc(s->value, sizeof(int) * new_size); /* TODO: error check */ s->size = new_size; }}/* 入棧 */void push(Stack* s, int i) if (s->pos >= s->size - 1) expand(s, s->size + INC_SIZE); s->value[++(s->pos)] = i;}/* 出棧 */int* pop(Stack* s) if (s->pos >= 0) return &(s->value[s->pos--]); else return NULL;}/* 是否為空棧 */int is_empty(Stack* s) return s->pos < 0;}/* 測試程序 */int main() Stack stack; stack.size = 5; initialize(&stack); /* 輸入數(shù)組 */ printf("輸入整數(shù)數(shù)組,每行一個整數(shù), 用 end 結(jié)束:\n"); while (1) char buf[128]; scanf("%s", buf); if (strcmp(buf, "end") == 0) break; else push(&stack, atoi(buf)); } printf("\n"); /* 逆序輸出 */ do int* i = pop(&stack); if (i == NULL) break; printf("%d", *i); if (!is_empty(&stack)) printf(" "); } while (1); destroy(&stack); return 0;}

C語言數(shù)組排序

文章TAG:c語言語言數(shù)組數(shù)組排序c語言數(shù)組排序

最近更新

主站蜘蛛池模板: 西畴县| 洛隆县| 滦南县| 白山市| 都江堰市| 腾冲县| 乐亭县| 南部县| 平原县| 长子县| 富川| 东莞市| 崇明县| 德钦县| 绍兴市| 澄江县| 偏关县| 双牌县| 洛隆县| 中卫市| 锦州市| 中阳县| 航空| 罗江县| 股票| 扎兰屯市| 台江县| 合江县| 龙南县| 高邮市| 瑞昌市| 建阳市| 浦江县| 盐山县| 阿图什市| 苗栗市| 汉阴县| 南郑县| 蕲春县| 浮梁县| 宽城|