这个 c语言题正确吗??谢谢!

来源:百度知道 编辑:UC知道 时间:2024/05/28 15:30:26
#include<stdio.h>
main()
{
int x,y;
if(x<1)y=x;
else if(1<=x<10)y=2*x-1;
else y=3*x-11;
scanf("x=%d",x);
printf("y=%d\n",y);
}
x x<1
y={ 2x-1 1<=x<10
3x-11 x>=10
写一段程序,输入x,输出y值

1. if(1<=x<10)
这里可不能当数学公式来写啊
应该是
if(x>=1 && x<10)
2. scanf的第二个参数应该是一个地址,所以应该这样写
scanf("x=%d",&x);
不过建议改成这样的:
printf("x=");
scanf("%d", &x);
3.
应该先给x赋值。所以上一条所提到的输入部分应该放到int x, y;之后

完整的程序
void main()
{
int x,y;
printf("x=");
scanf("%d", &x);
if(x<1)y=x;
else if(x>=1 && x<10)y=2*x-1;
else y=3*x-11;

printf("y=%d\n",y);

}

#include<stdio.h>
void main()
{
int x,y;
x = y = 0;
printf("Enter x");
scanf("%d",&x);
if(x<1)
y=x;
else if((1<=x) && (x<10))
y=2*x-1;
else
y=3*x-11;
printf("y=%d\n",y);
}
这个是对的,你是不是在linux平台下阿?我这个是在VC++6.0小编译的

你定义的是个函数吧,变量定义成float比较合适,正确的程序为
#include<stdio.h>
float foo(float x)
{