题解 | #KiKi和酸奶#
KiKi和酸奶
https://www.nowcoder.com/practice/c7721f3a1b1a47a783974453e82cadbb
#include<stdio.h> int main() { int n,h,m,a;//按题目要求定义变量,其中a为经过m分钟后还剩下a盒未打开的酸奶 while(scanf("%d %d %d",&n,&h,&m)!=EOF)//因为多组循环,所以用while,判断条件是只要有输入就循环 {//其中!=EOF我们小白现在可以先简单理解为有输入,不为空 printf("%d\n",n-m/h-(m%h==0?0:1));//因为经过m分钟有可能是打开了酸奶但没喝完也就是m不是h的 //整数倍,也就是取余不为0,但m/h因为定义为整型所以只保留整数,也就是已经喝完的,但已打开却没喝完的那一瓶要看m是不是h的倍数决定,如果m是h的倍数也就是取余为0则剩下未打开的酸奶盒数为n(总盒数)-m/h(已经喝完)-0(打开却没喝完),如果m不是h的倍数也就是取余不为0则剩下未打卡的酸奶盒数为n(总盒数)-m/h(已经喝完)-1(打开却没有喝完),这里采用了三目运算符,简单说:判断条件?a:b,若判断条件(也就是?前的部分)为真,则输出a(也就是:前的部分),若判断条件为假,则输出b(也就是:后的部分) } return 0; }
总结:
判断有输入就是scanf()!=EOF
三目运算符:判断条件?a:b,
若判断条件(也就是?前的部分)为真,则输出a(也就是:前的部分),
若判断条件(也就是?前的部分)为假,则输出b(也就是:后的部分)