當前位置:首頁 » 編程語言 » c語言按順序填數字
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言按順序填數字

發布時間: 2022-08-23 22:41:45

c語言編輯程序,任意輸入3個數,按從大到小的順序輸入

思路:三個數按從大到小順序輸出,可以先求出三個數中的最大值和最小值,三個數的和減去最大值和最小值的差就是中間數,接著依次輸出即可。
參考代碼:
#include "stdio.h"
int main()
{
int a,b,c,max,min;
scanf("%d%d%d",&a,&b,&c);
if(a>b){
max=a;
min=b;
}
if(c>max) max=c;
if(min>c) min=c;
printf("從大到小排序:%d %d %d\n",max,a+b+c-max-min,min);
}
/*
運行結果:
3 1 2
從大到小排序:3 2 1
*/

㈡ C語言如何輸入十個數,按從大到小順序排列!

用選擇排序法編寫c語言,實現從鍵盤上輸入10個數,按從大到小的順序排序輸出。代碼如下:

#include<stdio.h>

int main()

{

int i,j,a[10],t;

printf("輸入數");

for (i = 0; i < 10; i++)

scanf("%d",&a[i]);

for (i = 0; i < 10; i++)

{

for (j = i + 1; j < 10;j++)

if (a[i] < a[j]){

t = a[i];

a[i] = a[j];

a[j] = t;

}

}

printf("從大到小");

for (i = 0; i < 10; i++)

printf("%2d", a[i]);

return 0;

}

(2)c語言按順序填數字擴展閱讀:

代碼還可以設計,如下:

#include<stdio.h>

int main()

{

int a[10],i,j,t;//定義數組;

for(i=0;i<10;i++){

scanf("%d",&a[i]);//給數組賦值;

}

for(i=0;i<9;i++)//10個數,進行9輪比較;

for(j=0;j<10-i;j++){//第一個數比較9次,依次遞減;

if(a[j]>a[j+1]) {//交換值;

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

for(i=0;i<10;i++){

printf("%d ",a[i]);//輸出數組的值;

}

return 0;

}

}

printf("the sorted numbers: ");

for(i=0;i<10;i++)

printf(" %d",a[i]);

printf(" ");

}

㈢ C語言如何在鍵盤中輸入一個數字字元串並進行排序

樓主你好!

根據你的要求,我使用冒泡排序法,幫寫個了程序,代碼及運行結果如下!如果有不正確之處,請廣大好手指正!謝謝!

#include<stdio.h>#include<string.h>

intmain(){

chara[100];

inti,j;

printf("請輸入字元串: ");

scanf("%s",a);

for(i=0;i<strlen(a);i++)

for(j=0;j<strlen(a)-1-i;j++){

chartemp;

if(a[j]<=a[j+1]){

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

}

printf("排序後的字元串: %s ",a);

return0;

}

希望我的回答對你有幫助!

㈣ C語言中將三個數字進行排序的幾種寫法

方法1:用3個變數存放3個數字,按從大到小的順序排:

int a,b,c,tmp;

printf("請輸入3個數字:");

scanf("%d%d%d",&a,&b,&c);

if(a<b)//如果a比b小,交換a和b的值,使a存放大的數字

{

tmp=a;

a=b;

b=tmp;

}

if(a<c)//如果a比c小,交換a和c的值,使a存放大的數字

{

tmp=a;

a=c;

c=tmp;

}

if(b<c)//如果b比c小,交換b和c的值,使b存放大的數字

{

tmp=b;

b=c;

c=tmp;

}

printf("按照從大到小的順序為:%d,%d,%d ",a,b,c);

方法2:用數組存放3個變數,用冒泡排序的方法進行排序

int i=0,j=0,tmp=0,a[3];

printf("請輸入3個數字:");

for(i=0;i<3;i++)

scanf("%d",&a[i]);

for(i=0;i<2;i++)

for(j=0;j<2-i;j++)

if(a[i]<a[i+1])//按照從大到小排列

{

tmp=a[i];

a[i]=a[i+1];

a[i+1]=tmp;

}

printf("按照從大到小的順序為:");

for(i=0;i<3;i++)

printf("%d ",&a[i]);

printf(" ");

㈤ C語言怎麼編寫大量的順序編號數字

以下代碼找出1-150中能被散整除且不能被5整除的所有數字並顯示在屏幕上
int i;
for(i=1;i<=150;++i){
if(i%3 == 0 && i%5 !=0){

printf("%d\n",i);

}

}

㈥ C語言中 輸入幾個數字然後按照從小到大的循序排列起來。

你不會用數組嗎?定義一個任意大小的數組,將所有數全部存入數組,記住你輸入的數字個數要小於等於你數組的大小,然後使用冒泡排序就可以了

㈦ c語言任意輸入5個數,並按從大到小順序輸出

可以採用以下的代碼進行計算:

#include<stdio.h>

#include<stdlib.h>

intmain()

{

inta[5];

inti,j,k;

for(i=0;i<=4;i++)

{

scanf("%d",&a[i]);

}

for(i=0;i<=4;i++)

{

for(j=0;j<=4;j++)

{

if(a[i]>a[j])

{

k=a[i];a[i]=a[j];a[j]=k;

}

}

}

printf("排序結果是: ");

for(i=0;i<=4;i++)

{

printf("%d ",a[i]);

}

return0;

}

(7)c語言按順序填數字擴展閱讀:

數據類型關鍵字

short:修飾int,短整型數據,可省略被修飾的int。(K&R時期引入)

long:修飾int,長整型數據,可省略被修飾的int。(K&R時期引入)

long long:修飾int,超長整型數據,可省略被修飾的int。(C99標准新增)

signed:修飾整型數據,有符號數據類型。(C89標准新增)

unsigned:修飾整型數據,無符號數據類型。(K&R時期引入)

restrict:用於限定和約束指針,並表明指針是訪問一個數據對象的唯一且初始的方式。(C99標准新增)

復雜類型關鍵字

struct:結構體聲明。(K&R時期引入)

union:聯合體聲明。(K&R時期引入)

enum:枚舉聲明。(C89標准新增)

typedef:聲明類型別名。(K&R時期引入)

sizeof:得到特定類型或特定類型變數的大小。(K&R時期引入)

inline:內聯函數用於取代宏定義,會在任何調用它的地方展開。(C99標准新增)

㈧ C語言~十個數字從小到大怎麼排列~從大到小呢~

//要求任意輸入10個數,然後按從小到大順序輸出
#include <stdio.h>
int main()
{
int a[10];
int i,j;
int temp;
printf("請輸入10個整數:");
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<9;i++)
{
for(j=0;j<9-i;j++)
{
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
printf("排列後順序為:");
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf(" ");
return 0;
}

㈨ C語言如何從鍵盤輸入任意3個數,按從小到大的順序輸出

代碼1.

//輸入3個數,要求按從小到大順序輸出

#include<stdio.h>

intmain()
{
inta,b,c,t;
printf("請輸入三個數:");
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 ",a,b,c);
return0;
}

代碼2.

輸入3個字元串,按從小到大順序輸出。//先用程序對三個數進行從小到大排序,然後修改程序
#include<stdio.h>
#include<string.h>
intmain()
{voidswap(char*pt1,char*pt2);
chara[20],b[20],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(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 %s %s ",a,b,c);
return0;
}

voidswap(char*pt1,char*pt2)
{chart[20];
strcpy(t,pt1);
strcpy(pt1,pt2);
strcpy(pt2,t);
//t=*pt1;*pt1=*pt2;*pt2=t;
}

代碼3.

#include<stdio.h>
#include<string.h>
#defineSIZE3
#defineLEN50


intmain(void)
{
charstr[SIZE][LEN];
char(*pst)[LEN]=str;
chartemp[LEN];
inti,j;

printf("Pleaseenter3string. ");

for(i=0;i<SIZE;i++)
{
fgets(*(pst+i),LEN,stdin);
}
printf("Beforsort: ");

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("Aftersort: ");
for(i=0;i<SIZE;i++)
{
fputs(*(pst+i),stdout);
}

}