问题:一个自然数的立方等于几个连续奇数的和,随意输入一个自然数,求它的立方是哪几个连续自然数之和
我知道有一个公式,但是我的想法是从1开始的奇数循环,每次向前加一个连续的奇数,做一次判断小于则继续加,大于则从头开始,把首个奇数变大,继续循环
,推进寻找最终解输出
程序如下:
请问错在哪??????
#include <stdio.h>
#include <math.h>
void main()
{
int a,b,c,d,e,i=1;
printf("请输入a的值:");
scanf("%d",&a);
e=pow(a,3);
for(b=1;b<e||d==e;b=b+2)
{
i=1;
for(c=b+2;1;c=c+2)
{
d=c+b;
if(d<e)continue;
i++;
if(d>e)break;
if(d==e)
{printf("%d是以%d为最小值的%d个连续奇数的和",e,b,i);break;}
}
}
}
有几个地方,详见说明
#include <stdio.h>谢谢你啦!我们做朋友吧~
追答不客气,有问题可以探讨
谢谢你!我们做朋友好不好~
追答让我们愉快的玩耍 让我们荡起双桨
我知道有这么个公式,但是我非常想知道为什么我的程序不对,你能帮我看一看吗?谢谢拉
你好!介 意 我 加 你 扣 扣 吗?
这个程序运行总是莫名其妙什么都没输出就结束了
帮你写了一个 你的程序确实很多问题
四六九4八二八66 加这个吧。。。。。
本回答被提问者采纳c语言 任何一个自然数的立方等于连续奇数之和
输出结果为 列如n=4: 4^3 = 13+15+17+19 希望能帮到你。
用C语言证明任何一个自然数的立方等于 N 个连续奇数之和
正确答案来了,在TC2下调试通过:include <stdio.h> int test(int j,int i){ int k,s;s=0;for (k=i;k<j;k+=2){ s+=k;if (s>j) break;if (s==j) return k;} return 0;} void out_list(int i, int k){ int j,x;x=32;for (j=i;j<=k;j+=2){ printf("%c%d...
求n的3次方等于连续n个奇数的和用c语言
{ h=i*2+n*(n-1)+1;printf("%d",h);if(i!=(n-1))printf("+");} return 0;} 希望能帮到你,望采纳;
求n的三次方等于连续n个奇数的和。用c语言。
int main(){ unsigned long long i,n,s;scanf("%llu",&n);s=n*n-n+1;printf("%llu=",n*n*n);for(i=1;i<n;i++,s+=2)printf("%lld+",s);printf("%llu\\n",s);return 0;}
C语言,将N的3次方表示成N个连续的奇数之和;输出是乱码
h> include <math.h> void main(void){ int n,x,y,i;printf("input a positive number:\\n");scanf("%d",&n);x=pow(n,3);printf("%d=",x);for(i=0;i<n;i++){ y=i*2+n*(n-1)+1;printf("%d",y);if(i!=(n-1))printf("+");} printf("\\n");getch();} ...
输入一个正整数n[小于30],输出结果是n个连续奇数的和[结果等于n的立方...
按照题目要求编写的n的立方等于n个连续奇数和的C语言程序如下 因为n的立方等于关于n的平方两侧对称的连续奇数和,所以有如下程序 include<stdio.h> int main(){ int n,i;scanf("%d",&n);if(n<30){ for(i=n*n-n+1;i<=n*n+n-1;i+=2){ if(i==n*n+n-1)printf("%d\\n",i);el...
...输出它的立方等于n个连续奇数之和,测试时出了问题,不知错在哪_百度...
可能是数据溢出,因为整型变量在内存中只有两个字节,所以范围在—32768---+32768这是有符号数的,若无符号:0--65535;32的立方刚好等于32768而33的立方就超过此范围了,如果想扩大范围的话,可以用长整型的,但范围也大不了哪去,毕竟你用的是立方数。
c语言编程验证:任何一个自然数m的立方均可以写成m个连续的奇数之和...
int n, i, k, flag = 1, s = 0;do { scanf("%d", &n);for (k = 1; flag == 1; k = k + 2)for (i = 0, s=0; i < n; i++, k = k + 2){ s = k + s;if (n * n * n == s){ flag = 0;for (i = 0; i < n; i++, k = k - 2)printf(...
c语言编程:输入一个自然数n,求组成n^3的n个连续奇数
1,if(i==n) break;你这一句是不是有点多余?为什么不放在:for(i=1;i<=n;i++)?2,a=n*n-(n-1)+j*2;你的外部循环,也就是i几乎没有用,仅仅是用来增加循环次数而已,所以最小值都是7 = 3*3-2+0
一道C语言数组的题目。求指点
5.已知任何一个正整数n的立方均可以表示成n个连续奇数之和。例如:13=123=3+533=7+9+1143=13+15+17+19 ……试按下列要求编制程序:(1) 编写函数void find_odd(int odd[],int n),其功能是找到n个连续奇数,满足n的立方等于这些连续奇数之和,将这些奇数依次存放在数组odd中。(2) 编写main函数,定义变量...