C语言问题, 如下。。。问题是:1³ +2³ +。。。。+n³ <=1000,求n最大值

作者&投稿:晋雄 (若有异议请与网页底部的电邮联系)
c语言编程 1³+2³+∽∽+n³<1000的最大n值~

#include
int main()
{int n,s=0;
for(n=0;s<1000;)
{++n;
s+=n*n*n;
}
printf("最大n=%d
",--n);
return 0;
}

#include
#include

// 计算 n 的阶乘
int jc (int n)
{
if (n < 0) return -1;
else if (n == 0) return 1;
else return n * jc (n - 1);
}

// 计算 ex 的值
double ex (double x)
{
int i = 0;
double sum = 0;
// pow(x,i)是x的i次方, elem是要计算的多项式的通项式
double elem = pow (x, i) / (double) (jc (i));
// 当elem的值小于 0.000001 时结束循环
while (elem > 1e-6)
{
sum = sum + elem;
i++;
elem = pow (x, i) / (double)(jc (i));
}
return sum;
}

int main()
{
double x;
printf("请输入x的值: ");
scanf("%lf", &x);
printf("ex = %lf
", ex(x));
return 0;
}

以上代码已经通过测试,结果正确,并有一定量的注释,便于理解

首先有个问题就是n没有初始化

没有结果是因为while循环是个死循环

#include<stdio.h>
int main()
{
 int sum=0,n=1;
 while(1)
 {
  sum=sum+n*n*n;
  if(sum>1000)
  {
   printf("n的最大值为%d
",n-1);
   break;
  }
  n++;
 }
 return 0;

}

1³+2³+3³+4³+5³+6³+7³=784

1³+2³+3³+4³+5³+6³+7³+8³=1296



void main(void){//很多错误,下面是改过的,你自己对照看.
int n=0;
double sum;
sum=0;
while(sum<=1000){
n++;
sum=sum+pow(n,3);
}
printf("n的最大值为%d\n",n-1);
}

void main(void){//这是个更简单的.
int n=0,sum=0;
while(sum<=1000)
sum += ++n*n*n;
printf("n的最大值为%d.\n",n-1);
}

自己看!!!
#include<stdio.h>
#include<math.h>
int main()
{
int n=0;
double sum;
sum=0;

while(sum<=1000)
{
sum=sum+pow(n,3);
n++;
}printf("n的最大值为%d\n",n);
return 0;
}
}


怀化市15955969636: C语言编程问题1 -
祗卫羟苯: 根据题意输出结果应为 1 2 5 1 8程序如下#include void main(){ int a[10],n,num,max=0,min=0; scanf("%d", printf("\n"); for(n=0;n<num;n++)s...

怀化市15955969636: C语言中出现如下错误是什么意思: -
祗卫羟苯: 1 缺少函数原型 2 在”{“附近出现语法错误 3 需要C函数库中标准的函数原型(可能你用到了函数库中的函数你没加上头文 件). 4 没有定义的标识符.

怀化市15955969636: C语言 编程解决如下问题 -
祗卫羟苯: #include #include #define MAX(a,b...

怀化市15955969636: C语言问题:对一个4*4的二维数组左下三角的全部元素(包含对角线上的元素)作如下变换: ⑴若该数C语言问题:对一个4*4的二维数组左下三角的全部元... -
祗卫羟苯:[答案] #include int sushu(int x){ int i; if (x for(i=2;i*i if(x%i==0) return 0; return 1; } int nextsushu(int x) { int i; for(i=x+1;i if (sushu(i)) return i; return 1; } int main(){ int a[4][4]; int i,j,n=3,m=0; //为了方便,在此给数组赋初值 for(i=0;i for(j=0;j a[i][j]=++n; printf("开始...

怀化市15955969636: C语言程序问题,各位大虾帮帮忙,下面的问题如何解决???答案满意,加分. -
祗卫羟苯: 语法的错误,引用其他人.另外,VC++环境里,如果你在学C,文件尾缀请用 .c,否则激活 C++编译器,所以有错误1的提示:before '<class-head>'.首先,你这里怎么没有main函数呢? //不需要main也可以编过定义全局变量可以用N而不用具...

怀化市15955969636: C语言编程问题.题目如下 -
祗卫羟苯: 1. #include int sort(int *p); double a[10];void main() { int i; for(i=0;i {scanf("%f",(a+i));} for(i=0;i { *(a+9-i)=sort(a+9-i);} for(i=0;i } int sort(int *p) { int *t; t=a+0; while(t {if(*(t+1)>*(t)) { *(t+1)=*(t+1)+*(t); *(t)=*(t+1)-*(t); *(t+1)=*(t+1)-*(t); } t++;return *p; } } ...

怀化市15955969636: 用C语言求一元二次方程组遇到如下问题. -
祗卫羟苯: 判断条件写的不对 比如 if(a=0,b=0,c=0) 应该是 if(a==0&&b==0&&c==0) 其他类似if(a=0,b=0) =》 if(a==0&&b==0)if(d=0) =》 if(d==0)

怀化市15955969636: C语言编程初学问题 -
祗卫羟苯: (1)程序输出:c1=a;c2=b;c1=97;c2=98;因为:你用%c,就是你要输出一个字符,97的ascii码就是小写字母a,98为b; (2)如果你把c1=197,c2=198,应该会提示隐式转换吧,如果定义char c1,c2,默认为有符号的char型,取值范围为-128~127,因此输出的是197-256=-59,198-256=-58,貌似用%c一般机器输出的是?吧,一般的就输出0-127能输出字符吧. (3)换成int和(2)的%c一样,%d就是int的值.

怀化市15955969636: C语言问题 -
祗卫羟苯: 1) 变量的指针,其含义是指该变量的 B .A. 值 B. 地址 C. 名 D. 一个标志2) 若需要建立如图所示的存储结构,且已有声明float *p, m=3.14;则正确的赋值语句是 B .A. p=m; B. p=&m; C. *p=m; D. *p=&m;3) 有如下语句int a=10, b=20, *p1, *p2...

怀化市15955969636: 求一道C语言程序,问题如下
祗卫羟苯:__int32 i,j; for(i=10000;i<100000/4;i++){ j=i<<2; if(i/10000 ==j%10&& (i/1000)%10==(j/10)%10&& (i/100) %10==(j/100)%10&& (i/10) %10==(j/1000)%10&& i %10==(j/10000)) ShowMessage(IntToStr(i)+"*4="+String(i*4)); } 求出来只有21978*4=87912符合条件

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网