#include<stdio.h>
#include<math.h>
int main()
{
int max10(int a[10]);
int min10(int a[10]);
int a[10];
int i,max,min,d,c,f,m;
float n;
printf("請輸入10個數:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
d=(a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]);
printf("d=%d\n",d);
max=max10(a);
min=min10(a);
c=max;
f=min;
m=(c-f);
printf("m=%d\n",c);
printf("c=%d\n",c);
printf("f=%d\n",f);
printf("max=%d\n",max);
printf("min=%d\n",min);
n=(d-c-f)/8;
printf("n=%d\n",n);
return 0;
}
int max10(int a[10])
{int max2(int a,int b);
int m;
m=max2(a[0],a[1]);
m=max2(m,a[2]);
m=max2(m,a[3]);
m=max2(m,a[4]);
m=max2(m,a[5]);
m=max2(m,a[6]);
m=max2(m,a[7]);
m=max2(m,a[8]);
m=max2(m,a[9]);
return(m);
}
int max2(int a,int b)
{ if(a>=b)
return a;
else
return b;
}
int min10(int a[10])
{int min2(int a,int b);
int m;
m=min2(a[0],a[1]);
m=min2(m,a[2]);
m=min2(m,a[3]);
m=min2(m,a[4]);
m=min2(m,a[5]);
m=min2(m,a[6]);
m=min2(m,a[7]);
m=min2(m,a[8]);
m=min2(m,a[9]);
return(m);
}
int min2(int a,int b)
{ if(a<=b)
return a;
else
return b;
}
uj5u.com熱心網友回復:
第20行,“printf("m=%d\n",c);”,你究竟想輸出m,還是輸出c?應該改成“printf("m=%d\n",m);”第27行,“printf("n=%d\n", n);”,用整型格式“%d”輸出浮點數?那當然不會輸出正確的結果。應該改成“printf("n=%f\n", n);”
第26行,如果你想得到小數,那么應該改成“n = (d - c - f) / 8.0;”。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/284826.html
標籤:C++ 語言