⑴ c語言中三個數比較大小
#include<stdio.h>
//#include<windows.h>
voidmain()
{
intmax3(inta,intb,intc);
inta,b,c,result;
printf("Pleaseenterthreenumber: ");
scanf("%d,%d,%d",&a,&b,&c);
result=max3(a,b,c);
printf("Themaxofthreenumberis%d: ",result);
//system("pause");
}
intmax3(inta,intb,intc)
{
intx,z;
if(a>b)x=a;
elsex=b;
if(x>c)z=x;
elsez=c;
returnz;
}
(1)三個數作比較c語言擴展閱讀
C語言:三個數由小到大排序
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inta,b,c,t;//定義4個基本整型變數a,b,c,t;
printf("Pleaseinputa,b,c:");
scanf("%d%d%d",&a,&b,&c);
//如果a大於b,藉助中間變數t實現a、b值互換;
if(a>c)
{
t=a;
a=b;
b=t;
}
//如果a大於c,藉助中間變數t實現a、c值互換;
if(a>c)
{
t=a;
a=c;
c=t;
}
//如果b大於c,藉助中間變數t實現b、c值互換;
if(b>c)
{
t=b;
b=c;
c=t;
}
printf("theorderofthenumberis: ");
printf("%d,%d,%d",a,b,c);//輸出a,b,c的值順序輸出;
system("pause");
return0;
}
⑵ 怎麼用C語言比較3個數字的大小求高手指教
注意書寫格式
語句結束後要有分號
可以採用這種方式,比如判斷三個數a、b、c的大小,可以用逗號表達式搞定max=(max=a>b?a:b)>c?max:c
這種方式比較簡單
且不易出錯。
若有更多問題可在聯系我!
⑶ C語言3個數比較大小!
int max;要放到 int a,b,c;的後面。正確如下:
main()
{
int a,b,c;
int max;
scanf("%d%d%d",&a,&b,&c);
max=a;
if(b>max);
max=b;
if(c>max);
max=c;
printf("max=%d ",max);
}
#include<stdio.h>
//#include<windows.h>
voidmain()
scanf("%d,%d,%d",&a,&b,&c);
result=max3(a,b,c);
printf("Themaxofthreenumberis%d: ",result);
//system("pause");
優先順序
優先順序:C語言中,運算符的運算優先順序共分為15 級。1 級最高,15 級最低。 在表達式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算符 優先順序相同時,則按運算符的結合性所規定的結合方向處理。
自右至左的結合方向稱為「右結合性」。最典型的右結合 性運算符是賦值運算符。如x=y=z,由於「=」的右結合性,應先執行y=z 再執行x=(y=z)運算。C語言運算符中有不少為右結合性,應注意區別,以避免理解錯誤。
以上內容參考:網路-C語言運算符
⑷ 用C語言比較三個數的大小,並按照從大到小排序
#include <stdio.h>
#include <math.h>
int main(void)
{
int a,b,c;
printf("請輸入任意三個整數a,b,c:");
scanf("%d%d%d",&a,&b,&c);
int s;
if(a>b)s=a,a=b,b=s;//比較a,b大小,通過賦值,使得a<b 。此語句目的:a<b
if(a>c)s=a,a=c,c=s;//進一步比較a,c大小,通過賦值得出最小值,並賦給a; 此語句目的:a<c
if(b>c)s=b,b=c,c=s;//最後比較出b,c中的較大值。
printf("從大到小的順序依次是:%d%d%d",c,b,a);
return 0;
}
⑸ C語言 三個數比較大小
如果是要找出最大值和最小值,可用下面的方法(比較簡單可行而且可以適合比較多的數):
#include
"stdio.h"
main()
{int
i,a[5];//這個隨你定義要比較的數的多少;存放在數組中;
int
max,min;//存放最值;
printf("input
numbers:\n");//輸入數
for(i=0;i<5;i++)
scanf("%d",&a[i]);
max=min=a[0];//賦初值;
for(i=1;i<5;i++)
{if(a[i]>max)
max=a[i];//大值給max;
if(a[i]
評論
0
0
載入更多
⑹ C語言編寫3個數比較大小
代碼沒有問題,
不過你的輸入沒按照你自己scanf所設定的格式來
scanf("%d,%d,%d",&a,&b,&c);
這么寫的話,你應該這么輸入:
1,7,8(回車)
或者
2,5,3(回車)
別忘了逗號,也別忘了將3個數都輸完再回車
如果這么寫,
scanf("%d%d%d",&a,&b,&c);
就可以這么輸入:
2(回車)
3(回車)
1(回車)
(6)三個數作比較c語言擴展閱讀
C語言編寫3個數比較大小其他代碼樣例:
# include <stdio.h> //頭文件
int max(int x,int y,int z); //聲明子函數
void main()//主函數
{
int a,b,c,d;//定義變數名
printf("shuru a,b,c"); //列印出shuru a,b,c
scanf("%d,%d,%d",&a,&b,&c); //錄入數據
d=max(a,b,c);//調用子函數
printf("max = %d
",d);
}
int max(int x,int y,int z)//子函數體,比較大小返回最大值
{
int m,int n;
if(x>y) m = x;
else m = y;
if(m>z) n = m;
else n = z;
return(n);
}
⑺ C語言中,怎麼比較三個數的大小
比較方法:
1、比較從第一個數開始,先比較第一個數和第二個數的大小,如果第一個數大於第二個數,則將第一個數和第二個數互換;不大於(即等於或小於)則不作處理。
2、然後,再將第二個數和第三個數比較,同樣,若大於則將它們互換。
以1
2
3為例
先考慮我們所有的可能輸入類型(這里不一一列舉):1
2
3;3
2
1
;2
1
3;1
1
1;1
2
2;1
2
1;整體的思路為輸入三個數後,我們從中取兩個數,在這兩個數中選出最大的後將最大的數與第三個數做差比較這里請參考代碼理解;
代碼:
#include<stdio.h>
int
comp(int
x,int
y)
{
return
x>y?x:y;
}
int
main()
{
int
i,j,k;
int
a,b,c;
scanf("%d
%d
%d",&a,&b,&c);
j=comp(a,b);//j為兩個數里最大的值
k=c;//a+b-j求的是a,b里比較小的那個數;
if(j-k<0){printf("%d
%d
%d",k,j,a+b-j);return
0;}
//說明K最大按順序輸出就可以了1
2
3;2
2
3
if(j-k>=a+b-j){printf("%d
%d
%d",j,a+b-j,k);return
0;}//3
2
1
if(j-k<a+b-j){printf("%d
%d
%d",j,k,a+b-j);return
0;}//
3
2
3
}
總結:
其實這個代碼本質也和用if語句比較大小排序差不多,只不過這里不需要每次都調用三個if語句,直接一條if語句便可輸出答案效率更高一點。
⑻ 三個數比較大小的c語言程序
程序有問題把
在max函數中
三個if語句的條件都為逗號表達式
逗號表達式的值為逗號表達式中最後一個表達式的值
即下面左邊的三條語句相當於右邊的三條語句
if
(x>y,x>z)
a=x; if(x>z)
a=x;
if
(y>x,y>z)
a=y; if(y>z)
a=y;
if
(z>x,z>y)
a=z; if(z>y)
a=z;
應把逗號改為&&
&&的意思是且,和;
修改後程序如下
#include<stdio.h>
void
main()
{
int
max(int
x,int
y,int
z)
;
int
a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max(a,b,c);
printf("max=%d\n",d);
}
int
max(int
x,int
y,int
z)
{
int
a;
if
(x>y&&x>z)
a=x;
if
(y>x&&y>z)
a=y;
if
(z>x&&z>y)
a=z;
return(a);
}
⑼ 如何比較三個數的大小c語言
你這個問題實在是太專業了,我一般人回答不了,而且在這里也很難說清,所以的話我個人覺得你建議你c語言應該有專業的c語言書來進行學習和查找。
⑽ C語言三個數比較大小。。各種方法歸類
除了樓主的方法之外。還有以下的方法:
#include<stdio.h>
void
main()
{
int
a,b,c,m,n,k;
printf("請輸入三個數:\n");
scanf("%d%d%d",&a,&b,&c);
m=a>b?a:b;
m=m>c?m:c;
printf("最大的數是%d\n",m);
}
#include<stdio.h>
void
main()
{
int
a,b,c;
printf("輸入三個數:\n");
scanf("%d%d%d",&a,&b,&c);
if((a>=b
&&
b>=c)||(a>=c
&&
c>=b))
printf("%d\n",a);
if((b>=a
&&
a>=c)||(b>=c
&&
c>=a))
printf("%d\n",b);
if((c>=a
&&
a>=b)||(c>=b
&&
b>=a))
printf("%d\n",c);
}
有疑問歡迎提出。
望採納。謝謝。