写isTriangular函数,它取一个正整数,如果给定的数字是三角形,则返回1;返回0,否则。
主要功能还可以,但是“isTriangular”功能中有一些我无法看到的错误,请帮帮我。三角形数字如下所示:
#include<stdio.h>
int isTriangular(int N)
{
int sum = 0, n = 0;
for (n; sum <= N; n++)
sum += n;
if (sum == N)
return 1;
else
return 0;
}
int main()
{
int x;
do
{
scanf("%d", &x);
if (x > 0)
{
if (isTriangular(x))
printf("%d is a triangular number\n", x);
else
printf("%d is NOT a triangular number\n", x);
}
}
while (x > 0);
}
答案 0 :(得分:2)
将终止条件从sum <= N
更改为sum < N
。