新聞中心
C語(yǔ)言中,以命令行輸入一組數(shù)字,并以從小到大排序輸出!
樓上的都沒(méi)明白樓主的意思。O(∩_∩)O~
贛縣ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
#includestdio.h
#include math.h
#define N 10
void main()
{
char a[5];
int i,n,temp;
int num1[N],num2[N];
printf("請(qǐng)輸入要輸入的數(shù)字個(gè)數(shù):");
scanf("%d",n);
for(i=0;in;i++)
{
scanf("%s",a);
num1[i]=atoi(a);
}
for(int j=0;jn;j++) //從小到大排序
for(int k=j+1;kn;k++)
{
if(num1[j]num1[k])
{
temp=num1[j];
num1[j]=num1[k];
num1[k]=temp;
}
}
for(i=0;in;i++)
num2[i]=num1[1];
printf("排列后的數(shù)組是:\n");
for(i=0;in,i++)
{
if(i%5==0) putchar('\n');
printf("%d\t",num2[i]);
}
system("pause");
}
C語(yǔ)言如何從鍵盤輸入任意3個(gè)數(shù),按從小到大的順序輸出?
代碼1.
//?輸入3個(gè)數(shù),要求按從小到大順序輸出??
#include?stdio.h??
int?main()??
{??
int?a,b,c,t;??
printf("請(qǐng)輸入三個(gè)數(shù):");??
scanf("%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.
輸入3個(gè)字符串,按從小到大順序輸出。??//先用程序?qū)θ齻€(gè)數(shù)進(jìn)行從小到大排序,然后修改程序
#includestdio.h
#includestring.h
int?main()
{void?swap(char?*pt1,char?*pt2);
char?a[20],b[20],c[20];
char?*p1,*p2,*p3;
printf("請(qǐng)輸入三個(gè)字符串:");
gets(a);
gets(b);
gets(c);
//或用scanf("%s,%s,%s",a,b,c);
p1=a[0];p2=b[0];p3=c[0];//三個(gè)指針?lè)謩e指向三個(gè)字符數(shù)組
if(strcmp(*p1,*p2)0)swap(p1,p2);//if(strcmp(a,b)0)swap(a,b);?//比較兩個(gè)字符串的大小,為什么用前一句的時(shí)候會(huì)出現(xiàn)警告呢
if(strcmp(a,c)0)swap(a,c);//if(strcmp(*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);
strcpy(pt1,pt2);
strcpy(pt2,t);
//t=*pt1;*pt1=*pt2;*pt2=t;
}
代碼3.
#includestdio.h?
#includestring.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;iSIZE;i++)?
{?
fgets(*(pst+i),LEN,stdin);
}
printf("Befor?sort:\n");?
for(i=0;iSIZE;i++)
{?
fputs(*(pst+i),stdout);
}?
for(i=0;iSIZE-1;i++)
for(j=i+1;jSIZE;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;iSIZE;i++)?
{?
fputs(*(pst+i),stdout);
}
}
C語(yǔ)言作業(yè): 從鍵盤輸入3個(gè)整數(shù),按照從小到大的順序輸出
#includelt;stdio.hgt;
void main()
{
int a,b,c,t;
printf("請(qǐng)輸入三個(gè)整數(shù):a b c\n");
scanf("%d%d%d",a,b,c);
if(agt;b)
{
t=a;
a=b;
b=t;
}
if(agt;c)
{
t=a;
a=c;
c=t;
}
if(bgt;c)
{
t=b;
b=c;
c=t;
}
printf("排序后的三個(gè)整數(shù)為:%d,%d,%d\n",a,b,c);
}
擴(kuò)展資料:
scanf函數(shù)原型
int(const char*restrict format,...);
函數(shù)scanf()是從標(biāo)準(zhǔn)輸入流stdin(標(biāo)準(zhǔn)輸入設(shè)備,一般指向鍵盤)中讀內(nèi)容的通用子程序,可以說(shuō)明的格式讀入多個(gè)字符,并保存在對(duì)應(yīng)地址的變量中。
函數(shù)的第一個(gè)參數(shù)是格式字符串,它指定了輸入的格式,并按照格式說(shuō)明符解析輸入對(duì)應(yīng)位置的信息并存儲(chǔ)于可變參數(shù)列表中對(duì)應(yīng)的指針?biāo)肝恢谩C恳粋€(gè)指針要求非空,并且與字符串中的格式符一一順次對(duì)應(yīng)。
返回值
scanf函數(shù)返回成功讀入的數(shù)據(jù)項(xiàng)數(shù),讀入數(shù)據(jù)時(shí)遇到了“文件結(jié)束”則返回EOF。
如:
scanf("%d%d",a,b);
函數(shù)返回值為int型。如果a和b都被成功讀入,那么scanf的返回值就是2;
如果只有a被成功讀入,返回值為1;
如果a和b都未被成功讀入,返回值為0;
如果遇到錯(cuò)誤或遇到end of file,返回值為EOF。end of file為Ctrl+z或者Ctrl+d。
例:使用scanf函數(shù)輸入數(shù)據(jù)。
#includelt;stdio.hgt;
int main(void)
{
int a,b,c;
printf("Give me the value of a,b,c seperated with whitespaces:\n");
scanf("%d%d%d",a,b,c);
printf("a=%d,b=%d,c=%d\n",a,b,c);
return 0;
}
a,b,c中的是尋址操作符,a表示對(duì)象a在內(nèi)存中的地址,是一個(gè)右值。變量a,b,c的地址是在編譯階段分配的(存儲(chǔ)順序由編譯器決定)。
注意:如果scanf中%d是連著寫的如“%d%d%d”,在輸入數(shù)據(jù)時(shí),數(shù)據(jù)之間不可以用逗號(hào)分隔,只能用空白字符(空格或tab鍵或者回車鍵)分隔——
“2(空格)3(tab)4”或“2(tab)3(回車)4”等。若是“%d,%d,%d”,則在輸入數(shù)據(jù)時(shí)需要加“,”,如“2,3,4”。
參考資料:
百度百科——scanf(計(jì)算機(jī)語(yǔ)言函數(shù))
文章標(biāo)題:c語(yǔ)言中從小到大輸出函數(shù) c語(yǔ)言中從小到大輸出的程序
URL鏈接:http://www.ef60e0e.cn/article/dospcic.html