输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数中的最大值和最小值#includemain(){int i,j,max=0,min=0,sum=0;float avg;printf("请输入一批数:");scanf("%d",&i);while(i!=0){\x05 scanf("%d",&i);if(i%2==1){su

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 03:40:34
输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数中的最大值和最小值#includemain(){int i,j,max=0,min=0,sum=0;float avg;printf(

输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数中的最大值和最小值#includemain(){int i,j,max=0,min=0,sum=0;float avg;printf("请输入一批数:");scanf("%d",&i);while(i!=0){\x05 scanf("%d",&i);if(i%2==1){su
输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数中的最大值和最小值
#include
main()
{
int i,j,max=0,min=0,sum=0;
float avg;
printf("请输入一批数:");
scanf("%d",&i);
while(i!=0)
{
\x05 scanf("%d",&i);
if(i%2==1)
{sum=sum+i;
\x05 j++;
\x05 avg=sum/(j*1.0);}
if(i%2==0)
\x05 {
\x05\x05 if(maxi)min=i;
\x05 }
\x05
}
printf("奇数的平均值为%f\n",avg);
printf("偶数的最大值为%d,最小值为%d\n",max,min);
}
这个哪里错了呀?

输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数中的最大值和最小值#includemain(){int i,j,max=0,min=0,sum=0;float avg;printf("请输入一批数:");scanf("%d",&i);while(i!=0){\x05 scanf("%d",&i);if(i%2==1){su
同学你是女的吧,我亲自来指导你~

j起始没有定义,分配的内存空间中可能有数据了。
你起始的输入1个数后没有进行处理就又输了第二个数
要么把第二次输入的放到末尾,要么用DO WHILE循环。
另外平均数可以等求和结束后再除以个数。不要每次循环都除一次。
if(i%2==0)可以用else代替...

全部展开

j起始没有定义,分配的内存空间中可能有数据了。
你起始的输入1个数后没有进行处理就又输了第二个数
要么把第二次输入的放到末尾,要么用DO WHILE循环。
另外平均数可以等求和结束后再除以个数。不要每次循环都除一次。
if(i%2==0)可以用else代替

收起

起始没有定义,分配的内存空间中可能有数据了。
你起始的输入1个数后没有进行处理就又输了第二个数
要么把第二次输入的放到末尾,要么用DO WHILE循环。
另外平均数可以等求和结束后再除以个数。不要每次循环都除一次。
if(i%2==0)可以用else代替 #include
void main()
{
int i...

全部展开

起始没有定义,分配的内存空间中可能有数据了。
你起始的输入1个数后没有进行处理就又输了第二个数
要么把第二次输入的放到末尾,要么用DO WHILE循环。
另外平均数可以等求和结束后再除以个数。不要每次循环都除一次。
if(i%2==0)可以用else代替 #include
void main()
{
int i,j=0,max=0,min=0,sum=0;
float avg;
printf("请输入一批数:");
scanf("%d",&i);
while(i!=0)
{
if(i%2==1)
{sum=sum+i;
 j++;
 avg=sum/(j*1.0);
 }
if(i%2==0)
 {
 if (max if ((min>i)&&(i!=0)) min=i;
 }
 if (i=0) break;
 scanf("%d",&i);
}
printf("奇数的平均值为%f\n",avg);
printf("偶数的最大值为%d,最小值为%d\n",max,min);
}

收起

J没初值 设置为0

(我修改了一下,你试试,我试了,可以。)
#include
void main()
{
int i,j=0,max=0,min=0,sum=0;
float avg;
printf("请输入一批数:");
scanf("%d",&i);
while(i!=0)
{
...

全部展开

(我修改了一下,你试试,我试了,可以。)
#include
void main()
{
int i,j=0,max=0,min=0,sum=0;
float avg;
printf("请输入一批数:");
scanf("%d",&i);
while(i!=0)
{
if(i%2==1)
{sum=sum+i;
 j++;
 avg=sum/(j*1.0);
 }
if(i%2==0)
 {
 if (max if ((min>i)&&(i!=0)) min=i;
 }
 if (i=0) break;
 scanf("%d",&i);
}
printf("奇数的平均值为%f\n",avg);
printf("偶数的最大值为%d,最小值为%d\n",max,min);
}

收起