A. 用c語言將3個數排序~
scanf("%d,%d,%d",&a,&b,&c);與請輸入三個數a,b,c:3 4 5
這兩句寫錯了,你看看scanf()函數怎麼用。
你可以改成:
scanf("%d%d%d",&a,&b,&c);然後輸入 :3 4 5
或者不改scanf("%d,%d,%d",&a,&b,&c); 輸入改成: 3,4,5
B. C語言程序:從鍵盤輸入三個整數,按照從小到大輸出,條件運算符實現
int
a,b,c;
int
min,max,between;
min
=
(a
<
b)?((a
<
c)?a:c):((b
<
c)?b:c);
max
=
(a
>
b)?((a>c)?a:c):((b>c)?b:c);
示例如下:
#include<stdio.h>
void
main()
{
int
a,b,c;
int
min,max,between;
printf("輸入三個整數:");
scanf("%d%d%d",&a,&b,&c);
min
=
(a
<
b)?((a
<
c)?a:c):((b
<
c)?b:c);
max
=
(a
>
b)?((a>c)?a:c):((b>c)?b:c);
between
=
(a
>
b)?((a>c)?((b
>
c)?b:c):a):((b>c)?((c>a)?c:a):b);
printf("從小到大排列為:%d
%d
%d",min,between,max);
}
C. C語言程序編寫三個數由大到小排序
#include<stdio.h>
void main()
{
int a,b,c,k;
printf("\nplease a,b and c:");/*提示輸入三個數*/
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)/*如果a<b,交換a與b的值*/
{
k=a;
a=b;
b=k;
}
if(a<c)/*如果a<c,交換a與c的值*/
{
k=a;
a=c;
c=k;
}
if(b<c)/*如果b<c,交換b與c的值*/
{
k=b;
b=c;
c=k;
}
printf("a=%d\t,b=%d\t,c=%d\n",a,b,c);/*因為比較的時候是a<b<c,交換以後
的結果是a>b>c,所以輸出句子是a=%d\t,b=%d\t,c=%d這個順序*/
}
經過TC3.0測試完全正確。你題目也沒說用不用到調用函數,或者用其它編譯器的,所以只寫最簡單的給你
D. 任意輸出3個數字 按從小到大排序輸出 C語言
思路:三個數從小到大排序可以求出三個數中的最大數和最小數,三個數的和減去最大數和最小數,差就是中間數,三個數的最值可以使用三目運算符。
參考代碼:
#include<math.h>
#include<stdio.h>
int main()
{
float a,b,c,max,min;
printf("input 3 number:\n");
scanf("%f%f%f",&a,&b,&c);
max=(a>b?a:b)>c?(a>b?a:b):c;
min=(a<b?a:b)<c?(a<b?a:b):c;
printf("output 3 number = %.2f %.2f %.2f",min,a+b+c-min-max,max);
return 0;
}
/*
輸出:
input 3 number:
12.5 98.6 0.56
output 3 number = 0.56 12.50 98.60
*/
E. C語言中三個數排序
用C語言編寫通過if將3個數排序:
#include<stdio.h>/*函數頭:輸入輸出頭文件*/
void main()/*空類型:主函數*/
{
inta,b,c,t;/*定義變數的數據類型為整型*/
printf("輸入3個數,中間用空格隔開:");/*輸出文字提示*/
scanf("%d%d%d",&a,&b,&c);/*輸入3個數字*/
if(a<b)/*判斷a是否小於b*/
{t=a;a=b;b=t;}/*是,則a、b的值互換*/
if(a<c)/*判斷a是否小於c*/
{t=a;a=c;c=t;}/*是,則a、c的值互換*/
if(b<c)/*判斷b是否小於c*/
{t=b;b=c;c=t;}/*是,則b、c的值互換*/
printf("從小到大:%d,%d,%d ",c,b,a);/*輸出從小到大排列的數*/
printf("從大到小:%d,%d,%d ",a,b,c);/*輸出從大到小排列的數*/
}
(5)三個數排序c語言用條件運算符擴展閱讀
輸入三個數,比較其大小,並從大到小輸出。
#include<stdio.h>
int main(){
inta,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a<b){
intflag=a;
a=b;
b=flag;
}
if(a<c){
intflag=a;
a=c;
c=flag;
}
if(b<c){
intflag=b;
b=c;
c=flag;
}
printf("%d%d%d",a,b,c);
}
F. 如何用函數實現三個數的排序(用的是C語言)
一:全局變數
#include<stdio.h>
inta,b,c;//定義三個全局變數
voidsort()//不需要參數
{
intt;
if(a>b)
{
t=a;a=b;b=t;
}
if(b>c)
{
t=b;b=c;c=t;
}
if(a>b)
{
t=a;a=b;b=t;
}
}
intmain()
{
printf("輸入:");
scanf("%d%d%d",&a,&b,&c);
sort();
printf("排序:%d<%d<%d ",a,b,c);
return0;
}
G. 怎樣用C語言寫3個數從小到大排列的程序
直接上代碼:
#include<stdio.h>
#include<stdlib.h>
//返回兩者中較大數
intmax(inta,intb)
{
returna>b?a:b;
}
//返回兩者中較小數
intmin(inta,intb)
{
returna<b?a:b;
}
intmain()
{
intx,y,z;
intp1,p2,p3;//p1保存最大數,p2保存最小數
scanf("%d%d%d",&x,&y,&z);
p1=max(x,y);
p1=max(p1,z);//此時p1為最大值
p2=min(x,y);
p2=min(p2,z);//此時p2為最小值
p3=(x+y+z)-p1-p2;//p3為中間值
printf("%d%d%d ",p2,p3,p1);
return0;
}
有圖有真相:
H. c語言用if函數怎麼排列任意輸出三個數的大小
思路:如果利用if進行三個數a,b,b的排序,則先利用if判斷a和b的大小,把小數賦值給a大數賦值給b,再利用if判斷c和b的大小,把小數賦值給b大數賦值給c,則c就是最大值,最後比較a和b的大小,把小數賦值給a大數賦值給b,則a就是最小數,b是中間值,輸出a,b,c就是排序後數。
參考代碼:
#include<stdio.h>
intmain()
{
inta,b,c,t;
scanf("%d%d%d",&a,&b,&c);
if(a>b)//前判斷a和b的大小
{t=b;b=a;a=t;}
if(b>c)//再判斷b和c的大小
{t=b;b=c;c=t;}
if(a>b)//最後判斷a和b的大小
{t=a;a=b;b=t;}
printf("%d<%d<%d",a,b,c);
return0;
}
/*
輸出:
519
1<5<9
*/
I. C語言 三個數排序
兩種方法
簡單方法
#include<stdio.h>
int
main(void)
{
int
a,
b,
c,
t;
printf("軟體的功能是為3個數字排序,從大到小");
printf("請輸入三個數字,以空格相間隔:\n");
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("a=%d
b=%d
c=%d",
a,
b,
c);
getchar();
getchar();
return
0;
}
------------------------------------這是分割線------------------------------------------------
復雜方法
#include<stdio.h>
int
main(void)
{
int
x,
y,
z;
printf("此程序為你輸入的三個數值自動排序,用a表示最大,b為中間,c為最小\n");
printf("請輸入三個不同整數(以空格鍵相隔):\n");
scanf_s("%d
%d
%d",&x,&y,&z);
//
printf("x=%d
y=%d
z=%d\n",x,y,z);
if
(x
>
y
&&
y
>z)
printf("a=%d,b=%d,c=%d\n",x,y,z);
else
if
(x
>
z
&&
z
>
y)
printf("a=%d,b=%d,c=%d\n",x,z,y);
else
if
(y
>
x
&&
x
>
z)
printf("a=%d,b=%d,c=%d\n",y,x,z);
else
if
(y
>
z
&&
z
>
x)
printf("a=%d,b=%d,c=%d\n",y,z,x);
else
if
(z
>
x
&&
x
>
y)
printf("a=%d,b=%d,c=%d\n",z,x,y);
else
if
(z
>
y
&&
y
>
x)
printf("a=%d,b=%d,c=%d\n",z,y,x);
else
printf("有相同數值無法比較大小,請重新輸入不同數值\n");
getchar();
getchar();
return
0;
}
J. 輸入三個數,將三個數,從小到大,排列,然後輸出 要求用條件運算符
#include<iostream>
using namespace std;
int main()
{
int a, b, c;
cin >> a >> b >> c;
int max, mid, min;
max = (a > b) ? a : b;
max = (c > max) ? c : max;
min = (a < b) ? a : b;
min = (c < min) ? c : min;
mid = a + b + c - max - min;
cout << max << endl;
cout << mid << endl;
cout<<min << endl;
return 0;
}
思路就是,先挑出三個數中最大的,三個數中最小的,然後中間的那個數就是三個數的和再減去最大的和最小的