【问题标题】:Check n numbers if they are perfect squares and how to calculate their sum?检查n个数字是否是完美的平方以及如何计算它们的总和?
【发布时间】:2019-01-25 10:17:26
【问题描述】:

我必须解决的问题是检查用户引入的 n 个数字是否是完全平方,然后我必须计算这些完全平方的总和。我了解如何执行这些操作,但是我的代码根本不适用于应该计算总和的部分。我不知道该怎么办。

int main()
{
int n, num, sum, iVar;
float fVar;

    sum=0;
    fVar=sqrt((double)num);
    iVar=fVar;

printf("Introduce numbers, press 0 to stop:");

    for(n=0; ; n++)
        {
        scanf("%d", &num);
        if(num==0){break;}
        if(iVar==fVar)
            {
                sum+=num;
            }
        }

printf("Sum of all perfect squares is: %d", sum);
return 0;

}

【问题讨论】:

  • 我建议你咨询一位班级的助教(助教),或者聘请一位导师。您发布的代码表明您需要的帮助超出了 SO 所能提供的范围。

标签: c sum perfect-square


【解决方案1】:

您可以执行以下操作。对于运行无限循环,您可以使用while(num) 而不是for(n=0; ; n++)

#include<stdio.h>
#include<math.h>

int main()
{
  int sum = 0;
  double num = 0;

   printf("Introduce numbers, press 0 to stop:");

    scanf("%lf", &num);
    while(num)
        {
          int res =  sqrt(num);
          if((res*res)==num)
           {
                sum+=num;
           }

          scanf("%lf", &num);
       }

   printf("Sum of all perfect squares is: %d", sum);
   return 0;  
}

【讨论】:

    猜你喜欢
    • 2011-09-27
    • 2015-11-06
    • 2017-12-23
    • 1970-01-01
    • 2020-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多