您的位置首页百科问答

C语言编程题,从键盘输入任意3个数,按从小到大的顺序来自输出

问题补充说明:如题!!

C语言编程题,从键盘输入任意3个数,按从小到大的顺序来自输出

代码1.

123456789101112131415161718192021222324252627282930// 输入3个数,要求临按从小到大顺序输出     #include <stdio.h>     int main()  {      int a,b,c,t;      printf("请输入三个数:");      s角开计无互告万拉种巴定canf("%d%d%d抗销花就新频善针济",&a,&b,&c);      if(a > b)      {          t = a;          a = b;          b = t;      }      if(a > c)      {          t = a;          a = c;          c = t;      }      if(b > c)      {          t = b;          b = c;          c = t; 漏咐     }      printf("从小到大的顺序是:%呀该使先培空还d  %d  %d\n",a,b,c);      return 0;  }

代码2.

1挥卫开曾利胡回2345678910短尼热队111213141516171819202122232425262728输入3个字符串,按从小到大顺序输出。  //先用程序对三个数进行从小到大排序,然后修改服谓圆核四程序#include<s真般统方喜必输该齐你tdio.h>#inclu就组措盾史似他算口de<string.h>int main(){void swap(char *pt1,char *pt2); char a[20],b[2木报慢米甚0],c[20]; char *p1,*p2,*p3; printf("请输入三个字符串:"); gets(a); gets(b); gets(c); //或用scanf("%s,%s,%s",a,b,c); p1=&a[0];p2=&b[0];p3=&c[0];//三个指针分别指向三个字符数组 if(strcmp(*p1,*p2)>0)swap(p1,p2);//if(strcmp(a,b)>0)swap(a,b); //比较两个字符串的大小,为什么用前一句的低益说岁试纪印把时候会出现警告呢   if(strcmp(a,c)>0获罪须后此段王长宽延路)swap(a,c);换排好法干其并病岩受少//if(strc侵占夜甲沙mp(*p1,*p3)>0)swap(*p1,*p3); if(strcmp(b,c)>0介似府社感标巴雨氢)swap(b,c);// if(strcmp(*p2,*p3)>0)swap(*p2,*p3); printf("由小到大排列:%s\n%s\n%s\n",a,b,c); return 0;} void swap(char *pt1,char *pt2){ char t[20];   strcpy(t,pt1);   str之磁必神调快未响cpy(pt1,pt2);   strcpy(pt2,t);//t=*pt1;*pt1=*pt2;*pt2=t;}

代码3.

123456789101112131415161718192021222324252627282930313233343536373839404142434445#include<stdio.h> #include<string.h> #define SIZE 3 #define LEN 50   int main(void) {     char str[SIZE][LEN];     char (*pst)[LEN]=str;     char temp[LEN];     int i,j;          printf("Please enter 3 string.\n");          for(i=0;i<SIZE;i++)     {         fgets(*(pst+i),LEN,stdin);     }    printf("Befor 中培sort:\n");          for(i=0;i<SIZE;i++)     {          fputs(*(pst+i),stdout);             }      for(i=0;i<SIZE-1;i++)          for(j=i+1;j<SIZE;j++)           {                          if(strcmp(*(pst+i),*(pst+j)) == 1)              {         卖搜唯          strcpy(temp,*(pst+i));                  strcpy(*(pst+i),*(pst+j));                  strcpy(*(pst+j),temp);                }                         }        printf("After sort:\n");        for(i=0;i<SIZE;i++)        {            fputs(*(pst+i),stdout);         }              }