输入一个整数有可能被表示为n(n>=2)个连续的正整数之和

输入一个整数有可能被表示为n(n>=2)个连续的正整数之和:如 15=1+2+3+4+5
15=4+5+6
15=7+8

#include 
int s[100];
int main(){
	int n,i,j,k=1,p=0,tmp=0;
	int count=0;
	scanf("%d",&n);
	while(k<=n/2+1){
		//printf("k=%d\n",k);
		for(i=k;i<=n;i++){
			tmp = tmp+i;
			s[p++] = i;
			if(tmp == n){
				count++;
				for(j=0;jn){
				p=0;
				tmp=0;
				break;
			}
		}
		k++;
	}
	if(count==0){
		printf("NO!\n");
	}
	return 0;
}

你可能感兴趣的:(2017武大机试编程)