
我用C语言写了一个很短的程序,但是,有错误。请高手指点。
#include<stdio.h>voidmain(){intt;//cyclingnumberdoubledX;doubledY;doubledZ;doubledx;d...
# include <stdio.h>
void main()
{
int t;// cycling number
double dX;
double dY;
double dZ;
double dx;
double dy;
double dz;
double L=1;//LIMATE=dX+dY+dZ
double l;
float x1;
float x2;
float x3;
float y1;
float y2;
float y3;
float z1;
float z2;
float z3;
printf("%s","float l.x1.x2.x3.y1.y2.y3.z1.Z2.Z3");
printf("%s","double l.");
scanf("%d\n",&l);
printf("%s","float x1");
scanf("%f\n",&x1);
printf("%s","float x2");
scanf("%f\n",&x2);
printf("%s","float x3");
scanf("%f\n",&x3);
printf("%s","float y1");
scanf("%f\n",&y1);
printf("%s","float y2");
scanf("%f\n",&y2);
printf("%s","float y3");
scanf("%f\n",&y3);
printf("%s","float z1");
scanf("%f\n",&z1);
printf("%s","float z2");
scanf("%f\n",&z2);
printf("%s","float z3");
scanf("%f\n",&z3);
printf("%s","dX=");
scanf("%f\n",&dX);
printf("%s","dY=");
scanf("%f\n",&dY);
printf("%s","dZ=");
scanf("%f\n",&dZ);
while(L>=l)
{
if(L==1)L=0;
dX*x1+dY*y1+dZ*z1=dx;//因为dX在下一步计算中还要使用所里显把结果赋给dx---这里显示:Lavlue required
dX*x2+dY*y2+dZ*z2=dy;//因为dY在下一步计算中还要使用所里显把结果赋给dy---这里显示:Lavlue required
dX*x3+dY*y3+dZ*z3=dz;//因为dZ在下一步计算中还要使用所里显把结果赋给dz---这里显示:Lavlue required
dx+dy+dz=L;这里是要计算上面三个等式的总输出=L---这里显示:Lavlue required
dx=dX;
dy=dY;
dz=dZ;
t=t+1;
}
printf("Limmate=%s",L);
printf("CALCULAT TIMES=%s",t);
}//这里也不知道为什么出错。------'dz'is assigned a vale that is never used,'dy'is assigned a vale that is never used,
'dx'is assigned a vale that is never used,
只在我作注释的地方有问题。汉字注释在源程序中没有。这个循环是一个找不到通项公式的数列有点难理解,其实不用管计算过程,主要是付值上出了点问题。 展开
void main()
{
int t;// cycling number
double dX;
double dY;
double dZ;
double dx;
double dy;
double dz;
double L=1;//LIMATE=dX+dY+dZ
double l;
float x1;
float x2;
float x3;
float y1;
float y2;
float y3;
float z1;
float z2;
float z3;
printf("%s","float l.x1.x2.x3.y1.y2.y3.z1.Z2.Z3");
printf("%s","double l.");
scanf("%d\n",&l);
printf("%s","float x1");
scanf("%f\n",&x1);
printf("%s","float x2");
scanf("%f\n",&x2);
printf("%s","float x3");
scanf("%f\n",&x3);
printf("%s","float y1");
scanf("%f\n",&y1);
printf("%s","float y2");
scanf("%f\n",&y2);
printf("%s","float y3");
scanf("%f\n",&y3);
printf("%s","float z1");
scanf("%f\n",&z1);
printf("%s","float z2");
scanf("%f\n",&z2);
printf("%s","float z3");
scanf("%f\n",&z3);
printf("%s","dX=");
scanf("%f\n",&dX);
printf("%s","dY=");
scanf("%f\n",&dY);
printf("%s","dZ=");
scanf("%f\n",&dZ);
while(L>=l)
{
if(L==1)L=0;
dX*x1+dY*y1+dZ*z1=dx;//因为dX在下一步计算中还要使用所里显把结果赋给dx---这里显示:Lavlue required
dX*x2+dY*y2+dZ*z2=dy;//因为dY在下一步计算中还要使用所里显把结果赋给dy---这里显示:Lavlue required
dX*x3+dY*y3+dZ*z3=dz;//因为dZ在下一步计算中还要使用所里显把结果赋给dz---这里显示:Lavlue required
dx+dy+dz=L;这里是要计算上面三个等式的总输出=L---这里显示:Lavlue required
dx=dX;
dy=dY;
dz=dZ;
t=t+1;
}
printf("Limmate=%s",L);
printf("CALCULAT TIMES=%s",t);
}//这里也不知道为什么出错。------'dz'is assigned a vale that is never used,'dy'is assigned a vale that is never used,
'dx'is assigned a vale that is never used,
只在我作注释的地方有问题。汉字注释在源程序中没有。这个循环是一个找不到通项公式的数列有点难理解,其实不用管计算过程,主要是付值上出了点问题。 展开
2个回答
展开全部
int t;// cycling number
double dX;
double dY;
double dZ;
double dx;
double dy;
double dz;
double L=1;//LIMATE=dX+dY+dZ
double l;
float x1;
float x2;
float x3;
float y1;
float y2;
float y3;
float z1;
float z2;
float z3;
printf("%s","float l.x1.x2.x3.y1.y2.y3.z1.Z2.Z3");
printf("%s","double l.");
scanf("%d\n",&l);
printf("%s","float x1");
scanf("%f\n",&x1);
printf("%s","float x2");
scanf("%f\n",&x2);
printf("%s","float x3");
scanf("%f\n",&x3);
printf("%s","float y1");
scanf("%f\n",&y1);
printf("%s","float y2");
scanf("%f\n",&y2);
printf("%s","float y3");
scanf("%f\n",&y3);
printf("%s","float z1");
scanf("%f\n",&z1);
printf("%s","float z2");
scanf("%f\n",&z2);
printf("%s","float z3");
scanf("%f\n",&z3);
printf("%s","dX=");
scanf("%f\n",&dX);
printf("%s","dY=");
scanf("%f\n",&dY);
printf("%s","dZ=");
scanf("%f\n",&dZ);
while(L>=l)
{
if(L==1)
L=0;
dx=dX*x1+dY*y1+dZ*z1;//因为dX在下一步计算中还要使用所里显把结果赋给dx---这里显示:Lavlue required
dy=dX*x2+dY*y2+dZ*z2;//因为dY在下一步计算中还要使用所里显把结果赋给dy---这里显示:Lavlue required
dz=dX*x3+dY*y3+dZ*z3;//因为dZ在下一步计算中还要使用所里显把结果赋给dz---这里显示:Lavlue required
L=dx+dy+dz;//这里是要计算上面三个等式的总输出=L---这里显示:Lavlue required
dx=dX;
dy=dY;
dz=dZ;
t=t+1;
}
printf("Limmate=%lf",L);
printf("CALCULAT TIMES=%lf",t);
没有弄清赋值号
少了注释号
%s是用来输出字符串的
double dX;
double dY;
double dZ;
double dx;
double dy;
double dz;
double L=1;//LIMATE=dX+dY+dZ
double l;
float x1;
float x2;
float x3;
float y1;
float y2;
float y3;
float z1;
float z2;
float z3;
printf("%s","float l.x1.x2.x3.y1.y2.y3.z1.Z2.Z3");
printf("%s","double l.");
scanf("%d\n",&l);
printf("%s","float x1");
scanf("%f\n",&x1);
printf("%s","float x2");
scanf("%f\n",&x2);
printf("%s","float x3");
scanf("%f\n",&x3);
printf("%s","float y1");
scanf("%f\n",&y1);
printf("%s","float y2");
scanf("%f\n",&y2);
printf("%s","float y3");
scanf("%f\n",&y3);
printf("%s","float z1");
scanf("%f\n",&z1);
printf("%s","float z2");
scanf("%f\n",&z2);
printf("%s","float z3");
scanf("%f\n",&z3);
printf("%s","dX=");
scanf("%f\n",&dX);
printf("%s","dY=");
scanf("%f\n",&dY);
printf("%s","dZ=");
scanf("%f\n",&dZ);
while(L>=l)
{
if(L==1)
L=0;
dx=dX*x1+dY*y1+dZ*z1;//因为dX在下一步计算中还要使用所里显把结果赋给dx---这里显示:Lavlue required
dy=dX*x2+dY*y2+dZ*z2;//因为dY在下一步计算中还要使用所里显把结果赋给dy---这里显示:Lavlue required
dz=dX*x3+dY*y3+dZ*z3;//因为dZ在下一步计算中还要使用所里显把结果赋给dz---这里显示:Lavlue required
L=dx+dy+dz;//这里是要计算上面三个等式的总输出=L---这里显示:Lavlue required
dx=dX;
dy=dY;
dz=dZ;
t=t+1;
}
printf("Limmate=%lf",L);
printf("CALCULAT TIMES=%lf",t);
没有弄清赋值号
少了注释号
%s是用来输出字符串的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询