哪位大神c语言学得好,给看一下这程序有什么问题呗,运行不出来。。。想求出a[j], 感激不尽!

#include<stdio.h>#include<math.h>voidmain(){inti,j;floata[1]={0.129};floatf=0,d=0,m,n... #include <stdio.h>
#include<math.h>
void main()
{
int i,j;
float a[1]={0.129};
float f=0,d=0,m,n;
float x[5]={0.220,0.660,0.144,0.002,0.004};
float k[5]={66.67,50,0.015,100,33.33};
for(j=1;m>1e-4;j++)
{

float a[10];
for(i=0;i<5;i++)

{ f+=x[i]*(1-k[i])/(a[j]+k[i]);
d+=-x[i]*(1-k[i])/pow((a[j]+k[i]),2);}
n=a[j]-f/d;
m=n/a[j];}
printf("a[j]\n",a[j]);

}
展开
 我来答
百度网友46f75b6
2013-03-14 · TA获得超过109个赞
知道答主
回答量:87
采纳率:0%
帮助的人:53.8万
展开全部
按照原来的代码,我只能给你改到这了,代码意思我一句没变,只是把错误去除了。至于结果,其实我也不知道你要搞是啥。。。
#include <stdio.h>
#include<math.h>
void main()
{
int i=0,j=1;
float a[1]={0.129};
float f=0,d=0,m=0,n;
float x[5]={0.220,0.660,0.144,0.002,0.004};
float k[5]={66.67,50,0.015,100,33.33};
//for(j=1;m>1e-4;j++)
do
{
float a[10];
for(i=0;i<5;i++)
{
f+=x[i]*(1-k[i])/(a[j]+k[i]);
d+=-x[i]*(1-k[i])/pow((a[j]+k[i]),2);}
n=a[j]-f/d;
m=n/a[j];
printf("%f\n",a[j]);
j++;
}
while(m>1e-4);
}
追问
其实是想让a[j]满足一定精度后输出,类似牛顿迭代法,不知道怎么与程序中的两个函数嵌套,初值a[1]=0.129,。。。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wingshhh
2013-03-14 · TA获得超过381个赞
知道小有建树答主
回答量:236
采纳率:0%
帮助的人:184万
展开全部
你这程序有问题
除了打印语句语法错误外,循环逻辑不合理,循环内重复定义数据,肯定错误
你要解决什么问题?
追问
其实是想让a[j]满足一定精度后输出,类似牛顿迭代法,不知道怎么与程序中的两个函数嵌套,初值a[1]=0.129,。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kaixingui2012
2013-03-14 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6294万
展开全部
你程序内容乱七八糟的,说清楚要做什么,方便给你改
float a[1]={0.129}; 开头定个数组

float a[10]; 这里又来一个重名的

f+=x[i]*(1-k[i])/(a[j]+k[i]); 这里用到数组元素,可是数组没人给赋值啊
更多追问追答
追问
其实是想让a[j]满足一定精度后输出,类似牛顿迭代法,不知道怎么与程序中的两个函数嵌套,初值a[1]=0.129,。。。
追答
#include 
#include
int main()
{
int i,j;
float a=0.129;
float f=0,d=0,m;
float x[5]={0.220,0.660,0.144,0.002,0.004};
float k[5]={66.67,50,0.015,100,33.33};
m=1 ; //m没有初值,如何进行循环判断??
for(j=1;fabs(m)>1e-4;j++)
{
d=0;f=0;
for(i=0;i<5;i++)
{
f+=x[i]*(1-k[i])/(a+k[i]);
d+=-x[i]*(1-k[i])/pow((a+k[i]),2);
}
m=f/d;
a -= m ;
}
printf("a[%d]=%f\n",j , a);
return 0;
}
不知道是不是这样子
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
changhenxue999
2013-03-14 · TA获得超过250个赞
知道小有建树答主
回答量:519
采纳率:0%
帮助的人:233万
展开全部
float a[1]={0.129};

float a[10];

这2句好像有矛盾吧,学过好久了,也不是记很清楚了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-14
展开全部
更大更大阿德三国尕阿哥
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式