當前位置:首頁 » 編程語言 » 在三個數中找到最大的c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

在三個數中找到最大的c語言

發布時間: 2022-08-19 22:58:45

c語言三個數求最大

max函數里的if(x>y>z)那樣寫編譯器是不會檢查出錯誤,但不能實現你要的「求三個數的最大者」,c里的x>y>z跟數學里的x>y>z意思是不一樣的。。如假設:x=3,y=2,z=1;c里的if(x>y>z)是從左到右先判斷第一個「>」,即判斷x>y,因為x=3,y=2,所以x>y為真,x>y的值1,那麼x>y>z中第二個「>」號就變成判斷1>z,z=1,所以1>z就為假,雖然3>2>1,但if(x>y>z)還是為假。。。
max函數可以這樣寫,方法不唯一,能理解就可以:
int
max(int
x,int
y,int
z)
{
int
max;
max=x>y?x:y;
max=max>z?max:z;
return
max;
}

❷ C語言求3個數字中最大的數

這是我修改的程序,你試一試就知道了,因為,你開始的時候沒有將max賦值為a所以當你輸入是這樣的,比如5
4
3的時候max的值就是系統初始時任意賦的初值,因為它一個if語句都沒有做
#include

#include

int
main()
{
int
a,b,c,max;
scanf("%d%d%d",&a,&b,&c);
max=a;
if(a<=b)
max=b;
if(max<=c)
max=c;
printf("%d",max);
system("pause");
return
0;
}

❸ 在3個數中找出最大的數的C語言程序

可以用類似冒泡思想,想把頭兩個比較,把最大的記錄,然後把記錄分別與後面比較,比前者大就更新記錄,程序如下
int
a,b,c,d,emax;
cin>>a>>b>>c>>d>>e>>endl;
max=a>b?a:b;//在a,b中選擇最大的賦給max
max=max>c?max:c;//比較max與c,最大的更新max值
max=max>d?max:d;
max=max>e?max:e;
cout<<"max="<
評論
0
0
載入更多

❹ C語言,三個數求最大值,用if來做

具體代碼如下:

if(a>b) t=a;

else t=b;

//此時t是a、b中較大的那個。

if(t<c) t=c;

∥再與c此較,找出大的即可。

C語言的字元串其實就是以''字元結尾的char型數組,使用字元型並不需要引用庫,但是使用字元串就需要C標准庫裡面的一些用於對字元串進行操作的函數。它們不同於字元數組。使用這些函數需要引用頭文件<string.h>。



(4)在三個數中找到最大的c語言擴展閱讀:

for循環結構是c語言中最具有特色的循環語句,使用最為靈活方便,它的一般形式為:

for(表達式1;表達式2;表達式3)循環體語句 。(其中;不能省略)

表達式1為初值表達式,用於在循環開始前為循環變數賦初值。

表達式2是循環控制邏輯表達式,它控制循環執行的條件,決定循環的次數。

表達式3為循環控制變數修改表達式,它使for循環趨向結束。

循環體語句是在循環控制條件成立的情況下被反復執行的語句。

但是在整個for循環過程中,表達式1隻計算一次,表達式2和表達式3則可能計算多次,也可能一次也不計算。循環體可能多次執行,也可能一次都不執行。

❺ C語言找出三個數最大值怎麼弄

思路:先定義三個數a,b,c;接著鍵盤輸入並依次賦值,接著判斷a和b值大小,把大值賦值給a,接著比較a和c的大小,把大值賦值給a,最後輸出a。
參考代碼:
#include

int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a

評論
0

0

載入更多

❻ 如何用c語言編寫一個程序 就是有三個數 求最大的一個

程序如下:

#include<stdio.h>

int main()

{

int a,b,c,max;

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

max=a;

if(b>a) max=b;

if(b>c) max=b;

else if (c>a) max=c;

printf("max=%d ",max);

return 0;

}

基本思想:依次選出數組最小的數放到數組的前面。首先從數組的第二個元素開始往後遍歷,找出最小的數放到第一個位置。再從剩下數組中找出最小的數放到第二個位置。以此類推,直到數組有序

(6)在三個數中找到最大的c語言擴展閱讀:

C語言經典排序演算法

一、交換排序

1、冒泡排序

基本思想:比較相鄰的兩個數,如果前者比後者大,則進行交換。每一輪排序結束,選出一個未排序中最大的數放到數組後面。

2、快速排序

基本思想:選取一個基準元素,通常為數組最後一個元素(或者第一個元素)。從前向後遍歷數組,當遇到小於基準元素的元素時,把它和左邊第一個大於基準元素的元素進行交換。在利用分治策略從已經分好的兩組中分別進行以上步驟,直到排序完成。下圖表示了這個過程。

二、插入排序

1、希爾(shell)排序

基本思想為在直接插入排序的思想下設置一個最小增量dk,剛開始dk設置為n/2。進行插入排序,隨後再讓dk=dk/2,再進行插入排序,直到dk為1時完成最後一次插入排序,此時數組完成排序。

三、選擇排序

1、堆(Heap)排序

基本思想:先把數組構造成一個大頂堆(父親節點大於其子節點),然後把堆頂(數組最大值,數組第一個元素)和數組最後一個元素交換,這樣就把最大值放到了數組最後邊。

把數組長度n-1,再進行構造堆,把剩餘的第二大值放到堆頂,輸出堆頂(放到剩餘未排序數組最後面)。依次類推,直至數組排序完成。

四、歸並排序

基本思想:歸並演算法應用到分治策略,簡單說就是把一個答問題分解成易於解決的小問題後一個個解決,最後在把小問題的一步步合並成總問題的解。這里的排序應用遞歸來把數組分解成一個個小數組,直到小數組的數位有序,在把有序的小數組兩兩合並而成有序的大數組。

❼ c語言程序設計,輸入三個整數,找出最大的那個

1 輸入三個數。

2 比較前兩個,得到前兩個中的較大值。

3 用較大值與第三個數比較,得到最大值。

4 輸出。

代碼如下:

#include<stdio.h>
intmain()
{
inta,b,c,m;
scanf("%d%d%d",&a,&b,&c);//輸入三個數。
m=a>b?a:b;
if(m<c)m=c;//獲取最大值。
printf("最大值為%d ",m);

return0;
}

❽ C語言題:對任意3個數,求最大的一個數(if語句)

要實現這樣的要求,需要使用三個if語句。首先讀入三個數,存放到變數a,b,c 中,然後分三次判斷a和b,如果a小於b就交換a和b的值。同樣的操作方法應用於比較a和c,以及b和c。等到三次比較和可能的交換完成以後,只要輸出變數a的值就是三個數當中的最大數了。

❾ 求三個整數中的最大值c語言

#include<stdio.h>
main()
{
int a,b,c;
int big;
printf("請輸入3個數\n");
scanf("%d %d %d",&a,&b,&c);
if(a>=b)
big=a;
else
big=b;
if(c>big)
big=c;
printf("最大數是%d\n",big);
}

❿ C語言三個數求最大數

你做的那題我昨天剛做過,自己試過取min,能完成,倒是沒想過試3個數比大小。

我自己打了一遍,和你的差不多,我是max=最後一個數。。。希望出現高手解答一下。

推薦你看郝斌老師的視頻,按照他講的課,你的代碼打的不標准。

3個數取最大我寫了這個。

#include<stdio.h>

intmain(void)

{

inta,b,c;

intt;

printf("請輸入3個實數(以空格間隔):");

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

if(a<b)

a=b;

if(a<c)

a=c;

printf("最大的數是%d ",a);

}

如圖。。我是取的第三個。。