用c語言編寫輸入不相等的整數,使數按從小到大的順序輸出時出錯,求指教

時間 2022-03-08 15:15:06

1樓:匿名使用者

1、輸入要和scanf裡面的格式一致,是1,2,3,不是1 2 32、第2個if裡面少寫了y=t

3、第3個if寫錯了

正確**如下:

#include

int main()

if(y>z)

if(x>y)

printf("%d,%d,%d",x,y,z);}

2樓:汪好帥

輸入格式為用分號隔開

所以你輸入的時候也要一樣,而你用了分號,所以錯誤另外,你這樣的比較大小的方法,很樸實。給你比較簡單優化的**比較方法t1 = (xy ? x :

y) > z ? (x>y ? x :

y) : z;

if(t1 == x && t2 == y)printf("%d %d %d",x,z,y);

else if(t1 == x && t2 == z)printf("%d %d %d",x,y,z);

else if(t1 == y && t2 == x)printf("%d %d %d",y,z,x);

else if(t1 == y && t2 == z)printf("%d %d %d",y,x,z);

else if(t1 == z && t2 == x)printf("%d %d %d",z,y,x);

else (t1 == z && t2 == y)printf("%d %d %d",z,x,y);

3樓:

scanf("%d,%d,%d",&x,&y,&z);

將這一句改為:scanf("%d%d%d",&x,&y,&z);

也就是說%d之間的逗號不要,要是有這個號就必須原樣輸入;

由於你的**還有一個錯誤

輸入格式:

例如:請輸入要比較的三個數:1 2 3

結果為:0,1,3

你再找一下

4樓:

#include

int main()

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

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

}用陣列,氣泡排序方便

用C語言編寫輸入整數到陣列中,逆序後將其存回陣列並輸出

將前5個數和後5個數映象對調即可。如下 include stdafx.h if the vc 6.0,with this line.include stdio.h int main void int a 10 i,j printf input 10 integers.n for i 0 i 10 s...

如果abcd為互不相等的整數。並且它們的乘積為4。那麼是否可以確定a b c d的值。若可以

可以。因為他們都是整數,所以四個數絕對值都不大於4。那麼只剩下01234及其負數此外,1,2,1,2相乘正好為4。0不合適,所以可以確定這四個數 四個數字相加等於0 分析如下 如果存在0,那麼乘積肯定為0,所以四個數裡面肯定沒有0。如果是不等正整數,只可能是1,2,3,4 但是它們相乘積肯定大於4。...

鍵盤C語言程式設計輸入程式, c語言 編寫程式,使從鍵盤輸入的三位數倒著輸出

getchar函式 字元輸入函式 的作用是從終端輸入一個字元。用法 getchar 如 char a a getchar 表示從鍵盤輸入一個字元,並把他賦值給字元變數a 還可以用scanf 語句輸入資料。用法 scanf 格式控制,地址表列 如int a scanf d a scanf d d d ...