//?輸入3個數字,按降序輸出。
#包含?& ltstdio.h & gt
int?主()
{
int?a,b,c,t;
Printf("請輸入三個數字:");
scanf("%d%d%d ",& amp壹,& ampb & amp;c);
如果(a?& gt?b)
{
t?=?a;
答?=?b;
b?=?t;
}
如果(a?& gt?c)
{
t?=?a;
答?=?c;
c?=?t;
}
如果(b?& gt?c)
{
t?=?b;
b?=?c;
c?=?t;
}
Printf("從小到大的順序是:%d%d%d\n ",a,b,c);
回歸?0;
}代碼2。
輸入三個字符串,按降序輸出。//用程序把三個數從小到大排序,然後修改程序。
# include & ltstdio.h & gt
# include & ltstring.h & gt
int?主()
{void?swap(char?*pt1,char?* pt2);
夏爾?a[20],b[20],c[20];
夏爾?*p1,*p2,* p3
Printf("請輸入三個字符串:");
獲取(a);
gets(b);
gets(c);
//或者使用scanf("%s,%s,%s ",a,b,c);
p 1 = & amp;a[0];p2 = & ampb[0];p3 = & ampc[0];//三個指針分別指向三個字符數組。
if(strcmp(*p1,* p2)& gt;0)swap(p1,p2);//if(strcmp(a,b)>0)swap(a,b);?//比較兩個字符串的大小,為什麽用上壹句的時候會有警告?
if(strcmp(a,c)>0)互換(a,c);//if(strcmp(*p1,* P3)& gt;0)swap(*p1,* P3);
if(strcmp(b,c)>0)互換(b,c);//?if(strcmp(*p2,* P3)& gt;0)swap(*p2,* P3);
Printf("降序:%s\n%s\n%s\n ",a,b,c);
回歸?0;
}
作廢?swap(char?*pt1,char?*pt2)
{?夏爾?t[20];
strcpy(t,pt 1);
strcpy(pt1,pt2);
strcpy(pt2,t);
//t = * pt 1;* pt 1 = * pt2;* pt2 = t;
}代碼3。
# include & ltstdio.h & gt?
# include & ltstring.h & gt?
#定義?尺寸?3?
#定義?萊恩。50?
int?main(void)?
{?
夏爾?str[SIZE][LEN];?
夏爾?(* PST)[LEN]= str;?
夏爾?temp[LEN];?
int?I,j;?
printf("拜托?進入?3?字符串。\ n ");?
for(I = 0;我& lt尺寸;i++)?
{?
fgets(*(pst+i),LEN,stdin);
}
printf(" before?排序:\ n ");?
for(I = 0;我& lt尺寸;i++)
{?
fputs(*(pst+i),stdout);
}?
for(I = 0;我& ltSIZE-1;i++)
for(j = I+1;j & lt尺寸;j++)?
{?
if(strcmp(*(pst+i),*(pst+j))?==?1)
{?
strcpy(temp,*(PST+I));
strcpy(*(pst+i),*(PST+j));
strcpy(*(pst+j),temp);
}?
}?
printf("之後?排序:\ n ");?
for(I = 0;我& lt尺寸;i++)?
{?
fputs(*(pst+i),stdout);
}
}