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

c語言四個數怎麼輸出

發布時間: 2023-02-23 06:32:03

1. c語言怎麼實現輸入四個數abcd按從大到小輸出

個整數的排序,有使用單個變數和使用數組二種方法實現。
使用單個變數的方法:
#include<stdio.h>
int main()
{int a,b,c,d,t;
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a>b){t=a;a=b;b=t;}
if(a>c){t=a;a=c;c=t;}
if(a>d){t=a;a=d;d=t;}
if(b>c){t=b;b=c;c=t;}
if(b>d){t=b;b=d;d=t;}
if(c>d){t=c;c=d;d=t;}

printf("%d %d %d %d\n",a,b,c,d);
return 0;
}

使用數組和循環的方法:
#include<stdio.h>
int main()
{int a[4],i,j,t;
for(i=0;i<4;i++) //讀入4個數據
scanf("%d",&a[i]);
for(i=0;i<3;i++) //冒泡排序
for(j=0;j<3-i;j++)
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}

for(i=0;i<4;i++) //輸出4個數據
printf("%d ",a[i]);
printf("\n");
return 0;
}

2. C語言編程題:輸入4個整數,要求按由小到大順序輸出怎麼編啊

使用冒泡排序法進行編程:

解釋:

1.第一個for循環:利用數組循環輸入4個變數。

2.第二個for循環:該循環的意思是如果a[0]>a[1]的話,兩個變數的值交換,利用循環依次比較。要注意的是i<3,因為其中有i+1,i最大取到2,也就是i+1最大取到3才正確。

3.第三個for循環:利用循環依次輸出排序後的數組,每輸出一個加一個空格以便於區分。

(2)c語言四個數怎麼輸出擴展閱讀:

冒泡排序法,從數組頭部開始,不斷比較相鄰的兩個元素的大小,通過交換兩個元素的值使較大的元素逐漸往後移動,直到數組的末尾。

經過第一輪的比較,就可以找到最大的元素,並將它移動到最後一個位置。第一輪結束後,繼續第二輪。仍然從數組頭部開始比較,讓較大的元素逐漸往後移動,直到數組的倒數第二個元素為止。

經過第二輪的比較,就可以找到次大的元素,並將它放到倒數第二個位置。

以此類推,進行 n-1(n 為數組長度)輪「冒泡」後,就可以將所有的元素都排列好。

3. C語言中如何編 輸入4個數 輸出最大值和最小值

用數組來接收輸入的4個數
然後給數組排序
最後只需要輸出數組的第一個數和最後個數,具體代碼如下:

int i,j,tmp,num;
int str[4];

num=4;

printf("請輸入%d個整數:",num);//數
for(i=0;i<num;i++)
scanf("%d",&str[i]);

for(i=0;i<num-1;i++)//冒泡排序,從小到大
for(j=i+1;j<num;j++)
if(str[i]>str[j])
{tmp=str[i];str[i]=str[j];str[j]=tmp;}

printf("最小數:%d:\n",str[0]);//最小數
printf("最大數:%d:\n",str[3]);//最大數

4. c語言怎麼任意輸入4個數,然後將所有不同順序的這4個數輸出

採用遞歸的方法解決最好。

再提供一種初學者可以使用的方法,這個方法比較直接,容易理解:

#include<stdio.h>
voidmain()
{
inti,j,k,m,a[4];
for(i=0;i<4;i++)
scanf("%d",&a[i]);
printf(" 所有排列: ");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
for(m=0;m<4;m++)
if(i!=j&&i!=k&&i!=m&&j!=k&&j!=m&&k!=m)
printf("%d%d%d%d ",a[i],a[j],a[k],a[m]);
}


運行示例:

5. c語言 輸入四個數,判斷最大值輸出

#include <stdio.h>

int main()

{int a, b, c, d, max;

scanf(「%d%d%d%d」, &a,&b,&c,&d);

max = a; //a先當第一任擂主

if(b > max) //如果b比擂主大,則b成為擂主,否則擂主不變

max = b;

if(c > max)

max = c;

if(d > max)

max = d;

printf(「%d 」, max);

getch();

return 0;

}

(5)c語言四個數怎麼輸出擴展閱讀:

JAVA得到數組中最大值和最小值的簡單實例

public class TestJava4_3

{

public static void main(String args[])

{

int i,min,max;

int A[]={74,48,30,17,62}; // 聲明整數數組A,並賦初值


min=max=A[0];

System.out.print("數組A的元素包括:");

for(i=0;i<A.length;i++)

{

System.out.print(A[i]+" ");

if(A[i]>max) // 判斷最大值

max=A[i];

if(A[i]<min) // 判斷最小值

min=A[i];

}

System.out.println(" 數組的最大值是:"+max); // 輸出最大值

System.out.println("數組的最小值是:"+min); // 輸出最小值

}

}

該程序輸出結果:

數組A的元素包括:74 48 30 17 62

數組的最大值是:74

數組的最小值是:17

6. c語言輸入4個數,按從小到大輸出

說實在的,程序寫的確實比較差。
改這個程序比較麻煩,我猜測的你的原意
#include<stdio.h>
void
main()
{
int
a[4],b[4];
int
i,j,n,sum;
for(n=0;n<=3;n++)scanf("%d",&a[n]);
for(i=0;i<=3;i++){
sum=(a[i]>a[0])+(a[i]>a[1])+(a[i]>a[2])+(a[i]>a[3]);
if(sum==3)b[3]=a[i];
else
if(sum==2)b[2]=a[i];
else
if(sum==1)b[1]=a[i];
else
b[0]=a[i];
}
for(j=0;j<=3;j++)
printf("%d\n",b[j]);
}
不過問題比較多:
1、第二個for丟失了大括弧(建議無論是否需要都先打上,以防忘記)
2、
if(sum=3)a[3]=a[i];
else
if(sum=2)a[2]=a[i];
else
if(sum=1)a[1]=a[i];
else
a[0]=a[i];
這個sum=3等應當寫成sum==3
而且就這個,直接a[sum]=a[i]不是一樣嗎?
3、你要是修改了a[i]的值後面就錯了,所以我給你添了b[4]
4、你沒有考慮可以存在兩個數或者多個數相同的情況。
5、你這個選擇排序只是有個思路,距離編成程序還遠

7. c語言作業,輸出四個數A,B,C,D的全排列

#include<iostream>
#include<stdio.h>
#include<algorithm>
usingnamespacestd;
intmain()
{
intnum[4]={1,2,3,4};
do
{
printf("%c,%c,%c,%c ",num[0]+'A'-1,num[1]+'A'-1,num[2]+'A'-1,num[3]+'A'-1);
}while(next_permutation(num,num+4));
return0;
}

可以藉助於stl模板中的next_permutation函數,這個函數是按照字典序不停的取該序列的下一個序列,直到結束。然後輸出的時候講數字轉化為你要的字母即可。

例如 第一個序列是1,2,3,4,--》A,B,C,D

8. 任意輸入4個整數,從大到小排列輸出。c語言程序怎麼寫

個整數的排序,有使用單個變數和使用數組二種方法實現。
使用單個變數的方法:
#include<stdio.h>
int main()
{int a,b,c,d,t;
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a>b){t=a;a=b;b=t;}
if(a>c){t=a;a=c;c=t;}
if(a>d){t=a;a=d;d=t;}
if(b>c){t=b;b=c;c=t;}
if(b>d){t=b;b=d;d=t;}
if(c>d){t=c;c=d;d=t;}

printf("%d %d %d %d\n",a,b,c,d);
return 0;
}

使用數組和循環的方法:
#include<stdio.h>
int main()
{int a[4],i,j,t;
for(i=0;i<4;i++) //讀入4個數據
scanf("%d",&a[i]);
for(i=0;i<3;i++) //冒泡排序
for(j=0;j<3-i;j++)
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}

for(i=0;i<4;i++) //輸出4個數據
printf("%d ",a[i]);
printf("\n");
return 0;
}

9. C語言 輸入4個整數,要求按由小到大的順序輸出

if是可以沒有else的,這樣的情況下如果if的條件符合,則執行if語句,否則不執行,直接到下一個if。也就是說,如果a不大於b,也就是a小於b,那麼就像剛剛說的,不執行這個if就是了,計算機會往下閱讀程序,也就是去判斷下一個if,記住一句話「if條件不符合就不執行」。else只是相當於if不符合的話其他情況下執行什麼,如果沒有else,那就表示,if不符合,程序保持不動。
這個程序給你舉個實例講解也許你就明白了
假設輸入為1,3,4,2
1不大於3,第一個if不執行,目前順序為1,3,4,2
1不大於4,第二個if不執行,目前順序為1,3,4,2
1不大於2,第三個if不執行,目前順序為1,3,4,2
3不大於4,第四個if不執行,目前順序為1,3,4,2
3大於2,第五個if執行,實現交換,目前順序為1,2,4,3
4大於3,第六個if執行,實現交換,最後順序為1,2,3,4

其實你仔細想想,如果第一個if執行,實現交換,那麼第二個if中的a已經是交換過後的那個較小的數。第三個同理。也就是說,前3個if執行完以後確保了第1個數是4個數字中最小的,第四第五確保第二個數在剩下的3個數中是最小的(也就是4個數字中第二小的),第6個if確保第三個數小於第四個數。這樣子就實現了整個結構的排序。希望能幫到你。