Mister-小方


私信TA

用户名:1104986125

访问量:210093

签 名:

如此英俊为哪般

等  级
排  名 3
经  验 31623
参赛次数 1
文章发表 68
年  龄 19
在职情况 学生
学  校 大连交通大学
专  业 车辆工程

  自我简介:

TA的其他文章

解题思路以及注意事项:

  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;
}

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

 

0.0分

139 人评分

  评论区

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

这个为什么报错啊,求大哥看看
2022-11-17 18:25:04 | |
#include<stdio.h>
int main()
{
	int x, y;
	scanf("%d", &x);
	if (x < 1) {
		y = x;
	}
	if (1 <= x < 10) {
		y = 2 * x - 1;
	}
	if ( x >= 10) {
		y = 3 * x - 11;
	}
    printf("%d", y);
    return 0;
}
是真的烦,这是怎么不能通过的啊
2022-09-03 14:27:27 | |
#include <stdio.h>
int main()
{
	int x,y;
	scanf("%d",&x);
	switch(x<1)
	{
		case 1:y=x;break;
		case 0:
			switch(x<10)
			{
				case 1:y=2*x-1;break;
				case 0:y=3*x-1;
			}
	}
	printf("%d",y);
	return 0; 
}
不知道为啥答案错误,
之前我用if else整了个带小数的版本也不让我过。
2022-07-26 16:01:11 | |
#include <stdio.h>

int main()
{
	int x , y;
	printf("请输入x的值:");
	scanf("%d", &x);
	 if(x<1)
	 {
	 	printf("%d",x);
	 }else 
	 	if(1<=x<10)
	 {
	 	y=2.0*x-1;
	 	printf("%d",y);
	 }else 
	 	if(x>=10)
	 {
	 	y = 3.0*x-11;
	 	printf("%d",y);
	 }
	return 0;
 }
2022-05-05 11:24:37 | |
#include <stdio.h>
int main(){
    int x,y;
    printf("请输入一个数字:\n");
    scanf("%d",&x);
    if(x<0) 
       printf("x=%d\ny=%d\n",x,x);
    else if(x>=1 && x<10)
       printf("x=%d\ny=%d\n",x,2*x-1);
    else
        printf("x=%d\ny=%d\n",x,3*x-11);
    return 0;
}
其实这样也可以
2022-04-17 14:22:50 | |
#include<stdio.h>
int main()
{
	int x,y,z,a,b,c;
	scanf("%d",&x);
	if(x<1) z=a;
	else if(x>=1&&x<10) z=b;
	else z=c;
	switch(z)
	{
	case'a':
	y=x;
	printf("%d\n",y);break;
	case'b':
	y=2*x-1;
	printf("%d\n",y);break;
	default:
	y=3*x-11;
	printf("%d\n",y);break;
	}
	return 0;
}
为啥这个也50%。。。
2022-03-31 19:24:03 | |
#include <stdio.h>
int main(){
    int x,y;
    scanf("%d", &x);
    y=x<1?x:(x<10?2*x-1:3*x-11);
    // 三目表达式 表达1?表达2:表达3
    printf("%d", y);
    return 0;
}
2022-03-30 17:10:09 | |
#include<stdio.h>
int main()
{
	int x,y;
	scanf("%d",&x);
    if(x<1)
      y=x;
    if(1<=x&&x<10)  
     y=2*x-1;
    if(x>=10) 
     y=3*x-11;
     printf("%d",y);
	return 0;
}
这个通过了,但有问题吗?
2022-03-02 15:11:46 | |