国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

字符串排序

2019-11-11 07:29:59
字體:
來源:轉載
供稿:網友

之前寫博客發現網頁打不開,不知是什么原因,

今天試了一下 終于打開了 之前也一直應付考試  沒時間寫代碼 還要學習匯編語言 先來一小段開個頭吧:

# include <stdio.h>

/*查昊昊:輸入字符個數 然后輸入字符串 對字符串進行升序或降序排列*/# define N 101   //如果想錄入x個字節那么就把N的數值改成x+1int gainint(int *p,int a,int b);//返回數字的位數int gainchar(char *a,int min,int max);//返回字符長度void paixu(char a[],int n,int b);void main(){    int n,c,i,d;    char B[N],S[][3]={"升","降"};do{PRintf("請輸入字符串長度(2--%d):",N-1);gainint(&n,2,N-1);printf("輸入字符串:/n");c=gainchar(B,n,n+1);printf("原字符串:/n%s/n",B);for(i=0;i<2;i++){printf("%s序:/n",S[i]);        paixu(B,c,i);printf("%s/n",B);}}while(1);}int gainint(int *p,int a,int b)//p相當于地址,在主函數中傳入&a,就是把a的地址傳到函數里,那么在函數里就可以改變a的值了{int c[2]={0,1};do{scanf("%d",p);while(getchar()!='/n');  if(*p>b||*p<a)printf("輸入有誤,請重新輸入(%d--%d):",a,b);}while(*p>b||*p<a);    return *p;}int gainchar(char *a,int min,int max)//對*a輸入范圍(min,max),如果字符數組中存在'/n',將其改為'/0'{int c=-1;do{fgets(a,max,stdin);while(a[++c]);c=a[c-1]=='/n'&&c<max?c-1:c;if(c>=max-1)while(getchar()!='/n');elsea[c]='/0';if(c&&(c>max||c<min))//如果用戶只輸入'/n'則不提示輸入錯誤,否則提示錯誤printf("輸入有誤,請重新輸入只錄入(%d--%d)字節:/n",min,max-1);}while(c>max||c<min);    return c;}void paixu(char a[],int n,int b){    int i,j,k,temp;for(i=0;i<n-1;i++){k=i;for(j=i+1;j<n;j++)if(b?a[j]>a[k]:a[j]<a[k])   //b=0升序  b為其他降序k=j;if(k!=i){temp=a[k];a[k]=a[i];a[i]=temp;}}}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 甘肃省| 赞皇县| 堆龙德庆县| 麻江县| 洞头县| 平安县| 海口市| 通榆县| 苏尼特左旗| 家居| 利津县| 兴仁县| 武威市| 丹凤县| 汉川市| 宁乡县| 浮梁县| 泰来县| 黑龙江省| 正蓝旗| 平和县| 天峻县| 汕尾市| 内丘县| 富民县| 绥中县| 乌拉特后旗| 永川市| 余姚市| 涪陵区| 石门县| 德阳市| 桑植县| 太原市| 遵化市| 漳浦县| 太白县| 靖安县| 扶绥县| 天全县| 临沭县|