c语言的这个找男朋友小程序,为什么输入的数无论是什么,得出的结果都为假??

c语言的这个找男朋友小程序,为什么输入的数无论是什么,得出的结果都为假??,第1张

其实,庆梁觉得楼主把问题弄复杂了

没有注明单镇败位,输入者无所适从

因此,必须提示输入数据的单位:高度 cm,存款 万元

#include <stdio.h>

int main()

{

int height//御差颤定义身高,单位 cm

int money//定义存款,单位 万元

printf("请输身高cm和存款金额万元:\n")

scanf("%d,%d",&height,&money)

if(height>=180||money>=100)//如果身高大于等于180cm或者存款大于等于100万!

printf("符合要求\n")

else

printf("不符合要求\n")

return 0

}

请先理解转义字符的含义:

/t 制表符

/r 不换辩帆行回车

/n 换行回车

所以,上面的程喊前序中,输入abc然后跳到下一个制表符,一个制表符占8个字符位。

abc\t 的输出郑灶清应该是 abc_____ 下划线_表示一个空格。

那么:

abc\t de 就是abc______de

而\r是不换行回车,即回到本行的最开头,然后输出f

那么

abc\t de\rf就是fbc______de

然后出现制表位\t,制表位会将f后下一个制表位前的字符都变成空格,则

abc\t de\rf\t就是f________de

然后输出g并回车换行,即:

f_______gde

应该是这样的:知埋

#include <stdio.h>

main(){

printf("请输入当月利润:")

long i

float bonus

scanf("%d",&i)

if (i<=100000)

bonus=0.1*i

else if (10000<i<=200000)

bonus=100000*0.1+(i-100000)*0.075

else if (20000<i<=400000)

bonus=100000*0.1+100000*7.5*0.01+(i-200000)*5*0.01

else if (40000<i<=600000)

bonus=100000*0.1+100000*7.5*0.01+200000*5*0.01+(i-400000)*3*0.01

else if (60000<i<=1000000)

bonus=100000*0.1+100000*7.5*0.01+200000*5*0.01+200000*3*0.01+(i-600000)*1.5*0.01

else

bonus=100000*0.1+100000*7.5*0.01+200000*5*0.01+200000*3*0.01+400000*1.5*0.01+(i-1000000)*1*0.01

printf("%f",bonus)

}

问题是:①7.5%不等同于0.075。②你的范围划分有搭尺蚂问题,我给你改了,你看看就明白困核了~~~~


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12554903.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存