常州网站搭建找哪家,界面ui设计,西宁网站设计,影视摄影传媒公司分析#xff1a; 我们知道 1-100的整数 i 中#xff0c;9会出现在十位和个位上#xff0c;数9出现的次数可以通过以下来实现#xff1a; 个位是9 // i % 10得到整数 i 个位上的数十位是9 // i / 10得到整数 i 除了个位数的数字 这也是做这道题之后#xff0c;我们需要… 分析 我们知道 1-100的整数 i 中9会出现在十位和个位上数9出现的次数可以通过以下来实现 个位是9 // i % 10得到整数 i 个位上的数十位是9 // i / 10得到整数 i 除了个位数的数字 这也是做这道题之后我们需要掌握的。思考 1234想到得到4、12和123如何实现先自行思考一下 1234 % 10 //得到4 1234 / 100 //得到12 1234 / 10 //得到123 代码实现
#includestdio.h
int main()int count 0;int i 0;for (i 1; i 100; i){if (i % 10 9)//个位数是9{count;printf(%d , i);}if (i / 10 9)//十位数是9{count;printf(%d , i);}}printf(\n);printf(%d\n, count);return 0;
} 从这里可以看出99是算了两次的所以数字9的出现次数是20 。那下例打印出19是怎么回事呢
易错点
#includestdio.h
int main()int count 0;int i 0;for (i 1; i 100; i){if (i % 10 9)//个位数是9{count;printf(%d , i);}else if (i / 10 9)//十位数是9{count;printf(%d , i);}}printf(\n);printf(%d\n, count);return 0;
} 从运行结果看出99少算了一次。对比前一个代码发现差别仅有分支结构if-if、if-else if。
if-if条件只要满足就会都会执行if语句if-else只会执行一个语句要么是if语句要么是else语句 。
而这里99首先满足 i % 10 9 的判断条件所以执行完相应语句后就到for循环的调整语句i没有进入else语句。 期待