qq_36751365
格兰芬多没有阴天
2017-01-09 09:41
采纳率: 100%
浏览 689
已采纳

为什么这个程序报错?HDOJ上的题

#include
#include
#include

int main()
{
double m,n;
while(scanf("%2lf %2lf",&m,&n)!=EOF)
{
double s,k,c,i,a[100],b[100];

i=0;
c=0;
if(m<=n)
{

  if(m%2==1)a[i]=m;         //奇数
  else      b[i]=m;         //偶数
  ++m;
  ++i;
}
for(;i--;)
{
    c++;
    s=s+pow(a[c],2);
    k=k+pow(b[c],2);
}
printf("%d %d",s,k);

}
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • shadowfromsun
    shadowfromsun 2017-01-09 10:26
    已采纳

    图片说明

    图片说明

    第一,你发的那个include 没有引入东西,二,你的那个for循环,中间是判断什么时候循环结束的

    点赞 评论
  • shen_wei
    shen_wei 2017-01-10 08:12
     double m,n;
        while(scanf("%2lf %2lf",&m,&n)!=EOF)
        {
            double s = 0,k = 0,a[100] = {0},b[100] = {0};
            int i=0,c=0;
            if(m<=n)
            {
    
                if( ((int)m) % 2 == 1)
                    a[i] = m;         //奇数
                else
                    b[i] = m;         //偶数
                ++m;
                ++i;
            }
            for(;i--;)
            {
                c++;
                s=s+pow(a[c],2);
                k=k+pow(b[c],2);
            }
            printf("%d %d",s,k);
        }
    
    点赞 评论

相关推荐