if语句为什么条件满足了不执行前面是对一个字符型变量赋值,有Y,有N
然后if(a==‘Y’)
语句1
else
语句2
可是这个为什么都执行的是a==‘N’的情况啊,明明是Y的时候也执行else的语句。
大概就是求预测身高的一个
主要问题实在最后的那个if上,diet只有两种情况,是Y的时候H乘以1.015
可是这个if好像没起作用
C语言
大概就是求预测身高的一个
追答代码。
追问faHeight是父亲身高,运动影响是sport,饮食影响diet
主要问题实在最后的那个if上,diet只有两种情况,是Y的时候H乘以1.015
可是这个if好像没起作用
追答直接贴上你的代码!!
追问在前面
if(diet=='Y')
H=H*1.015;
printf("Your future height will be %.2f(cm)",H);
所以哪里有else?
追问我把else删了,就是这个if好像没有起作用
有没有if它都执行的是diet为N的运算
追答那是你的代码写的有问题,你不放上代码我怎么知道你是哪错了?
追问#include
int main()
{
int sport;
float faHeight,moHeight,h,H;
char SEX,diet;
printf("Boys(M) or girl(F):");
scanf("%c",&SEX);
printf("Input father height(cm):");
scanf("%f",&faHeight);
printf("Input mother height(cm):");
scanf("%f",&moHeight);
printf("Do you like sports(3/2/1):");
scanf("%d",&sport);
printf("Do you have a good habit of diet(Y/N):");
diet=getchar();
switch(SEX)
{
case'm':;
case'M':h=(faHeight+moHeight)*0.54;break;
case'f':;
case'F':h=(faHeight*0.923+moHeight)/2;
}
switch(sport)
{
case 3:H=h*1.02;break;
case 1:H=h*1.00;break;
case 2:H=h*1.01;
}
if(diet=='Y')
H=H*1.015;
printf("Your future height will be %.2f(cm)",H);
return 0;
}
所以这段代码哪有else??
追问else我删了,这个if语句一共就两个选择,不是Y就是N,Y的时候乘以1.015,N的时候原值输出,所以我把else删了直接输出
可是这个if的条件满足了也没有乘以1.015
添个else就是
else
H=H;保持原值,所以我删了直接输出
哎,真的是捉急,你把原来if else删了是要给我看什么?我看现在这段连else都没有的代码怎么知道为什么你原来的if和else没有执行?和你交流真是费劲。
追问就是这个if没有执行,
追答你问别人去吧,这个问题我回答不了。
C语言,某if条件句,条件满足,却不执行,是什么原因
是不是由于你的a,b,c,d由于都是double类型的,受存储精度的限制,在你认为可能是满足if语句的条件下其实没有满足条件,因而没有执行
keil里面为什么if条件满足了,但里面有一调语句执行不了?
优化掉了。无意义的局部变量赋值,编译器认为是可以砍掉的。
vb if语句满足条件却不执行then,反而直接去执行else if 。
1.这个该注释掉的语句的位置不对 2.语法正确,逻辑有点偏离作者的思路 建议:1.设置一个断点,然后点F8一步一步执行,相信你会找到问题的 2.把代码粘贴出来不就行了,医生看病不也得有病人才能开方子?,是不?
c++ for里面的if语句没有执行为什么
因为if(true)才会只能if语句 不满足条件就不会执行if语句。或者跳出了for循环也不会执行if语句。请设置断点进行调试。
C#为什么 if语句不执行
不执行if语句的原因可能是读取的行的字符串长度不等于3或者读取的文件本身就无内容无法进入while。
c语言if条件是或语句第一个条件满足了还会运行第二个吗
会。在C语言中,if语句的逻辑是“条件为真,则执行接下来的代码块”。第一个条件为真,那么第一个代码块会被执行。因此第二个条件为真,那么第二个代码块会被执行。
jQuery中if语句条件为真为什么也不会执行?
如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]。如果两个值都是null,或者都是undefined,那么[相等]。== (双等号)判断规则:如果两个值类型相同,进行 === 比较。如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较:如果一个是null、一个是undefined,那么[相等]...
为什么我的if语句不能运行呢?
编程语言中\/* *\/中的内容属于注释部分,不会进行编译运行,去掉后就可以了。
JAVA里面if语句不执行怎么回事
毫无疑问,找不到。也不存在这样的值,所以if条件都不会触发,当然无法执行。我估计是你想的是一个值如果大于4或者小于或等于0。那么就这么设置:int i = input.nextInt();if (i>4 || i<=0) { System.out.print("输入错误!请重新输入:");i = input.nextInt();} ...
为啥我写的if语句执行不了?求解答?
整数的除法会自动舍去尾数,可以用下面的办法计算整数a的各位数字:个位数字: b = a % 10;十位数字: c = a \/ 10 % 10;百位数字: d = a \/ 100 % 10;