c语言 任何一个自然数的立方等于连续奇数之和

来源:百度知道 编辑:UC知道 时间:2024/05/18 10:57:42
验证上面结论:如,1^3=1;2^3=3+5;3^3=7+9+11
要求:程序对每个输入的自然数计算并输出相应的连续奇数

我的要求,用比较简单的循环语句,就IF,WHILE之类,不出现复杂的结构和语法.
简洁,一语中地.
我们还没学TEMP 之类的语句,应该老师布置出来不会用这些,请大家再弄些简单的,就只有简单的循环语句

先分析规律有:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
5^3=21+23+25+27+29
6^3=31+33+35+37+39+41

可推出输入自然数n则:n^3=[n(n-1)+1]+…………+
后面为n个数。

编程如下:
#include<stdio.h>
int main()
{
int n,m,i;
printf("please input n:")
scanf("%d",&n);
m=n*(n-1)+1;
printf("%d^3 = ",n);
for(i=1;i<=n;i++)
{ printf("%d+",m);
m=m+2;
}
printf("\b\n");
}

注意\b的作用是退格,从而删掉最后一个数后面的加号。
输出结果为 列如n=4: 4^3 = 13+15+17+19
希望能帮到你。

我写了个,楼上的虽然简单但是基于找到了规律,像我这种笨脑袋可想不到,所以我写了一般化的,希望你喜欢哈~~
include<stdio.h>
void main()
{
int n,n3,i,j,k=0,f=0;
char q='\0';
scanf("%d",&n);
if(n<=0)
printf("data is error");
else
{
n3=n*n*n;
for(i=1;i<=n3;i+=2)
{