判断输入的整数是否等于一个连续正整数序列和

#include<stdio.h>
void fun(int n)
{
    
    
	int j,b,c,m,flag=0;
    for(b=1;b<n/2;b++)
	{
    
    
		m=n;
		c=b;
		while (m!=0 && m>=c)
		{
    
    
			m=m-c;
			c++;
		}
		if(m==0)  //判断m减到最后是否为0
		{
    
    
			printf("%d=",n);
			for(j=b;j<c-1;j++)
			    printf("%d+",j);
			printf("%d\n",j);
			flag=1;
			
		}	
	}
	if(flag==0)
	   printf("不能分解"); 
}

int main()
{
    
    
	int n;
	printf("请输入一个整数 :");
	scanf("%d",&n);
	fun(n); 
}

猜你喜欢

转载自blog.csdn.net/xiaozhazhazhazha/article/details/104507026