请问一下大家我下面的代码哪里出问题了,当输入的值较大时就会计算错误。我是一个自学的新手。

河伯的新娘 2019-11-04 07:33:12
#include<stdio.h> int main() { int x,y; printf("请输入x的值\n"); scanf("%d",&x); if(x<1) { x=y; printf("y的值为%d",y); } else if(1<=x<10) { y=2*x-1; printf("y的值为%d",y); } else { if(x>=10) { y=3*x-11; printf("y的值为%d",y); } else { printf("输入错误"); } } return 0; }
...全文
28 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Anorak Bear 2019-11-04
  • 打赏
  • 举报
回复
#include<stdio.h> int main() {     int x,y;          printf("请输入x的值\n");     scanf("%d",&x);          if(x<1)     {         y=x;         printf("y的值为%d",y);     }     else if(1<=x&&x<10)     {         y=2*x-1;         printf("y的值为%d",y);     }     else if(x>=10)         {             y=3*x-11;             printf("y的值为%d",y);         }         else         {             printf("输入错误");         }     return 0; }
不闻窗外事 2019-11-04
  • 打赏
  • 举报
回复
在c中,不能这样判断1<=x<10 如果你想两边都判断 要这样 : if (x >= 1 && x < 10)
不闻窗外事 2019-11-04
  • 打赏
  • 举报
回复
兄弟,你可真是个新手
int main()
{
int x, y;

printf("请输入x的值\n");
scanf("%d", &x);

if (x<1)
{
y = x;
printf("y的值为%d", y);
}
else if (x < 10)
{
y = 2 * x - 1;
printf("y的值为%d", y);
}
else
{
y = 3 * x - 11;
printf("y的值为%d", y);
}
return 0;
}

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧