C语言题,希望帮忙解决

输入x,输出y,x和y满足关系:
x<-5 y=x;
-5<=x<1 y=2*x+5;
1<=x<4 y=x+6;
x>=4 y=3*x-2;
程序如下
#include<stdio.h>
main()
{
float x,y;
scanf(%f,&x);
if(x<-5)
y=x;
if(-5<=x&&x<1)
y=2*x+5;
if(1<=x&&x<4)
y=x+6;
else
y=3*x-2;
printf(%f\n,y);
}
C语言新手不会做,求指导

第1个回答  2010-11-20
首先第二行的main前面应该有int组成int main ()
那个地方应该是scanf(“%f”,&x);
还有就是最后应该是printf(“%f\n”,y);
注意写c语言的时候一定要切换成英文书写 否则你打出来的标点还是中文的标点,vc会报错
然后就是建议如果定义浮点型变量用double 输出时对应%lf 因为float范围太小 容易溢出…
想说的就是这些 希望可以帮到楼主…
第2个回答  2010-11-20
#include<stdio.h>
main()
{
float x,y;
scanf(“%f”,&x);
if(x<-5)
y=x;
else if(-5<=x&&x<1)
y=2*x+5;
else if(1<=x&&x<4)
y=x+6;
else if
y=3*x-2;
printf(“%f\n”,y);
}
最后else的话只是相对于前一个if,也就是说假如你X的值是-6,不在1和4 之间,还是会执行最后else的那一步 ,还有语法问题是不管输入和输出都要加引号
第3个回答  2010-11-20
#include<stdio.h>
void main() //main函数可能需要一个类型(一般基础书上会写void)有的编译系统不需要void
{
float x,y;
scanf("%f",&x); //scanf(%f,&x);输入%f要有引号。
if(x<-5)
y=x;
if(-5<=x&&x<1)
y=2*x+5;
if(1<=x&&x<4)
y=x+6;
else
y=3*x-2;
printf("%f\n",y); //同样,也是需要加引号
}本回答被网友采纳
第4个回答  2010-11-28
你的问题太烦琐,我都懒得看,下次问问题要简单明了
相似回答
大家正在搜