您的位置:首页 > 职场人生

网易面试题 输入一个正数n,输出所有和为n连续正数序列

2015-08-17 16:41 471 查看
题目:输入一个正数n,输出所有和为n连续正数序列。
例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。
#include<stdio.h>

void SumOfSequence(int n)

{

int p=1;

int q=2;

int i,j,sum;

printf("输出sum为:%d连续正数序列\n",n);

while(q<=(n+1)/2)

{

sum = 0;

for(i=p;i<=q;i++)

{

sum += i;

}

if(sum == n)

{

for(j=p;j<=q;j++)

printf("%d ",j);

printf("\n");

++p;

++q;

}

else if(sum < n)

++q;

else

++p;

}

}

int main()

{

SumOfSequence(15);

return 0;

}

运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: