#include<stdio.h>
#include<stdlib.h>
int main()
{
int i;
while (scanf_s("%d", &i) != EOF)
{
if (i > 6)//如果如论输入什么,都打印i is bigger than 6,是因为if语句后面+了;
{
printf("i is bigger than 6\n");
}else if (i < 0) {
printf("i is smaller than 0\n");
}else if (i < -7) {
printf("i is smaller than -7\n");
}
else
{
printf("i is not bigger than 6\n");
}
}
return 0;
}
想问一下为什么输入-9打印i is smaller than 0,不是应该打印i is smaller than -7?怎么改
谢谢!
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i;
while (scanf("%d", &i) != EOF)
{
if (i > 6)//如果如论输入什么,都打印i is bigger than 6,是因为if语句后面+了;
{
printf("i is bigger than 6\n");
}else if (i < 0&&i>-7) {
printf("i is smaller than 0\n");
}else if (i < -7) {
printf("i is smaller than -7\n");
}
else
{
printf("i is not bigger than 6\n");
}
}
return 0;
}
望采纳,因为先判断了其小于0所以输出了0
因为-9小于0呀,执行了if(i<0)里的打印操作,后面就不会执行了,想要打印-7,把最后一个判断放在if(i<0)里
else if (i < 0) {
if (i < -7) {
printf("i is smaller than -7\n");
}else{
printf("i is smaller than 0\n");
}
}
把第二个else if和第一个else if交换下位置。