English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

才剛學而已 會的非常少!
怎麼讓使用者打入5個數字後 自動印出最大值和最小值

有沒有人能用if
printf
慢慢比 筆出最大最小值呢..ORZ

#include
#include
int main()
{
int a,b,c,x,y;


printf("請輸入5個數字\\n");
scanf("%d%d%d%d%d",&a,&b,&c,&x,&y);
接下來打了一些if敘述.............................................




但後來跑出來 我發現有破綻耶 不能包含每種狀況

有人能用if描述慢慢的去比出來嘛

或許會滿辛苦的..

可以的話幫幫忙囉 感謝感謝

2006-10-14 22:50:16 · 4 個解答 · 發問者 Anonymous in 電腦與網際網路 程式設計

4 個解答

#include
#include
int main()
{
int a[5], max, min;//a[0]~a[4]
printf("請輸入5個數字\n");
scanf("%d%d%d%d%d", a, a+1, a+2, a+3, a+4);
max = 0;
min = 0;

if(a[max] < a[1]) max = 1;
else if(a[min] > a[1]) min = 1;

if(a[max] < a[2]) max = 2;
else if(a[min] > a[2]) min = 2;

if(a[max] < a[3]) max = 3;
else if(a[min] > a[3]) min = 3;

if(a[max] < a[4]) max = 4;
else if(a[min] > a[4]) min = 4;

printf("the %dth number is max = %d, the %dth number number is min = %d", max+1, a[max], min, a[min]);
getch();
getch();
}
//把input存成陣列,應該比較不會浪費變數!

2006-10-19 03:11:44 補充:
只是要最大,最小值而已,不用比較所有的case!!

2006-10-14 23:56:13 · answer #1 · answered by 風風 2 · 0 0

#include
#include
using namespace std;
int main (void)
{
int a,b,c,d,e;
cout<<"請輸入5個變數"< cout<<"請輸入a"< cin>>a;
cout<<"請輸入b"< cin>>b;
cout<<"請輸入c"< cin>>c;
cout<<"請輸入d"< cin>>d;
cout<<"請輸入e"< cin>>e;
if ((a>b&&a>c&&a>d&&a>e))
cout<<"(a>b&&a>c&&a>d&&a>e)"<<"="<<"max"<<"="< if ((b>a&&b>c&&b>d&&b>e))
cout<<"(b>a&&b>c&&b>d&&b>e)"<<"="<<"max"<<"="< if ((c>a&&c>b&&c>d&&c>e))
cout<<"(c>a&&c>b&&c>d&&c>e)"<<"="<<"max"<<"="< if ((d>a&&d>b&&d>c&&d>e))
cout<<"(d>a&&d>b&&d>c&&d>e)"<<"="<<"max"<<"="< if ((e>a&&e>b&&e>c&&e>d))
cout<<"(e>a&&e>b&&e>c&&e>d)"<<"="<<"max"<<"="< if ((a cout<<"(a if ((b cout<<"(b if ((c cout<<"(c if ((d cout<<"(d if ((e cout<<"(e system ("pause");
return 0;
}

2006-10-18 13:34:09 · answer #2 · answered by 洋廷 3 · 0 0

//Power by Microsoft Visual Studio 2005//可以使用 Dev-C++ 編譯此程式#include#include#define LENGTH 5//輸入的數字個數int main(int argc, char *argv[]){ //=====START=====// void resort(int *NUMBER); int i,NUM[LENGTH]; for(i=0;i*(NUMBER+j)){    temp=*(NUMBER+j);    *(NUMBER+j)=*(NUMBER+i);    *(NUMBER+i)=temp;   }  } }}//泡沫浮昇排序

2006-10-14 23:53:10 · answer #3 · answered by Big_John-tw 7 · 0 0

老實說,找出最大跟最小,不是這樣寫。
但如果硬要寫,有一個不需要太多大腦的寫法
if ((a>b)&&(a>c)&&(a>x)&&(a>y))
printf("a is the max\n");
if ((b>a)&&(b>c)&&(b>x)&&(b>y))
printf("b is the max\n");
if ((c>a)&&(c>b)&&(c>x)&&(c>y))
printf("c is the max\n");
if ((x>a)&&(x>b)&&(x>c)&&(x>y))
printf("x is the max\n");
if ((y>a)&&(y>b)&&(y>c)&&(y>x))
printf("y is the max\n");

if ((a printf("a is the min\n");
if ((b printf("b is the min\n");
if ((c printf("c is the min\n");
if ((x printf("x is the min\n");
if ((y printf("y is the min\n");

當然以上的寫法,沒解決等於的CASE,

2006-10-14 23:20:25 · answer #4 · answered by weafon 3 · 0 0

fedest.com, questions and answers