C语言简单程序总是提示identifier 'x'

#include<stdio.h>
#include<math.h>

int main()

{
float x,y;

printf("请输入一个X的值");

scanf("%f",&x);

if x<1
printf("y=%f",x);

if x>1%%x<=10

printf("y=%f",y=2*x-1);

if x>=10

printf("y=%f",y=3*x-1);

return 0;
}

请问大神这个哪里错 了

首先 if(),因此你的每个if后面要加括号,还有 你的 %% 应该想表达 且 的意思吧,符号是 &&
下面代码编译通过:
#include<stdio.h>
#include<math.h>
int main()
{
float x,y;
printf("请输入一个X的值");
scanf("%f",&x);
if (x<1)
printf("y=%f",x);
if( x>1&&x<=10)
printf("y=%f",y=2*x-1);
if (x>=10)
printf("y=%f",y=3*x-1);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-03
#include<stdio.h>

#include<math.h>

int main()

{

    float x,y;

    printf("请输入一个X的值");

    scanf("%f",&x);

    if (x<1)

        printf("y=%f",x);

    if (x>1&&x<10)

        printf("y=%f",y=2*x-1);

    if (x>=10)

        printf("y=%f",y=3*x-1);

    return 0;

}

第2个回答  2013-10-03
你错得多了,你是学matlab的吗?if后面要加括号的如:if(x>5)
还有条件与是&&条件或是||没有%%这种东西.你要想表达1<x<=10就是这样
if(x>1&&x<=10){
}那个中括号的意思是满足if真条件就执行的代码块,如果你不加中括号,只会在if真后往下执行一个分号的语句..