一个关于c程序的简单问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 04:52:28
帮我看看错在什么地方,找了好久都没发现,我想求sqrt(y^2+z^2)的最大值
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
main()
{
float x,y,z,m,n,p;
y=3194.82;
z=1551.47;
m=0;
;
for(x=0;x<=0.5;x=x+0.001)
{
y=y-2794.82*x;
z=z+249.18*x;
n=sqrt(y*y+z*z);
if(n>m)
{
m=n; p=x;
}
}
printf("\nMmax=%f x=%f a=%f",&m,&p);
}
"printf("\nMmax=%f x=%f a=%f",&m,&p); "中的a=%f去掉不算,还有,
m=0;
;
for(x=0;x<=0.5;x=x+0.001)
中间的那个分号也不算,去都去掉了,还是不行
y=y-2794.82*x;和下面的那个z=z+249.18*x;是他们与x的函数关系
其实就是两条直线形式的函数
y=3194.82-2794.82*x
z=1551.47+249.18*x
请问我错哪了,蒙了都T.T

#include<math.h>
main(){
float x,y,z,m,n,p,q;
y=3194.82;
z=1551.47;
m=0;
for(x=0;x<=0.5;x=x+0.001){
y=y-2794.82*x; /*我不明白这样做什么?*/
z=z+249.18*x;
n=sqrt(y*y+z*z);
if(n>m){m=n; p=y;q=z;}
}
printf("\nMmax=%.3f y=%.3f z=%.3f",m,p,q); /*不是&m,&p,&q*/
}

/*你先看看这个吧!*/
#include<math.h>
main(){
float x,y,z,m,n,p,q,k;
m=-1;
for(x=0;x<=0.5;x=x+0.001){
y=3194.82-2794.82*x;
z=1551.47+249.18*x;
n=sqrt(y*y+z*z);
if(n>m){m=n;p=y;q=z;k=x;}
printf("\nans:n=%.3f y=%.3f z=%.3f x=%.3f",n,y,z,x);
}
printf("\nMmax=%.3f y=%.3f z=%.3f x=%.3f",m,p,q,k);
}

/*或就是你自己写的这个*/
#include<math.h>
main(){
float x,y,z,m,n,p,q,k;
y=3194.82;
z=1551.47;
m=-1;
for(x=0;x<=0.5;x=x+0.001){
y=y-2794.8