解题思路以及注意事项:

  1. 本题主要是if语句的应用,本题有两次判断,if()里面一次,else if()里面一次,最后的else不用加括号判断,因为前面的都不执行,就执行else后面的语句了。

  2. 注意else后面不能加分号,不然会报错,注意if()和else if()后面不能加”;“。

  3. 注意1<=x<10的问题,好多新手都这样写,这在c里面是比较低级的错误,应该这样写   1<=x&&x<10

实例代码:

#include"stdio.h"
int main(){
    int x,y;
    scanf("%d",&x);
    if(x<1){
        y=x;
    }
    else if(1<=x&&x<10){
        y=2*x-1;
    }
    else{
        y=3*x-11;
    }
printf("%d",y);
    return 0;
}

有什么不懂得可以在下方评论区评论

点赞(53)
 

0.0分

120 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 253 条评论

兔子先森 5年前 回复TA
#include<stdio.h>
int max(int x,int y)
{
    return x>y?x:y;
}
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    printf("%d\n",max(max(a,b),c));
}
为神魔我这个也报错啊
兔子先森 5年前 回复TA
@拉格朗日 不是你呢多了,人家题上面就没有提示的呢句话
兔子先森 5年前 回复TA
@澄漫 还可以用三个if啊
兔子先森 5年前 回复TA
@菜鸡一个 你用了三个if没有这样的吧
默默潜伏 5年前 回复TA
@默默潜伏 啊,好嘎啊,,,,谢了
北辰 5年前 回复TA
@默默潜伏 else 打错了
默默潜伏 5年前 回复TA
@菜鸡一个 我也不知道为什么,上面的实例代码也用的int
默默潜伏 5年前 回复TA
@clouvsmiex printf("y=%d",y);这个也不行
默默潜伏 5年前 回复TA
@clouvsmiex 不能输这个printf("x=");它只能要一个答案
默默潜伏 5年前 回复TA
#include<stdio.h>
int main()
{
int x,y;
scanf("%d",&x);
if(x<1){
y=x;
}esle if(1<=x&&x<10){
y=2*x-1;
}else{
y=3*x-11;
}
printf("%d",y);
return 0;
}
感觉一模一样啊,为什么还是错的。。。