下载此文档

第14讲 输出1~999中能被3整除,且至少有一位是5的所有整数.doc


文档分类:文学/艺术/军事/历史 | 页数:约2页 举报非法文档有奖
1/2
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/2 下载此文档
文档列表 文档介绍
第14讲输出1~999中能被3整除,且至少有一位是5的所有整数
类型必修题
算法类型穷举法
趣味性*
难度**
一级算法:
i=1;
while(i<=999) /*遍历1~999中的所有数*/
{
分解出i的百位n3、十位n2、个位n1; ①
如果(i满足条件) ②
打印此数i;
i++;
}
其中①和②步需要进一步求精。
①的二级求精:
n3=i/100 ;
n2=(i-n3*100)/10 ;
n1=i%10 ;
②的二级求精:
i能被3整除:i%3==0。
i中至少有一位是5:(n3==5 ||n2==5 || n1==5)。
由于这两个条件要同时满足,所以只需将以上的两个表达式用逻辑运算符“与”运算符连接起来即可。
(i%3==0)&&(n3==5 ||n2==5 || n1==5)
转换为C语言程序如下:
1 #include<>
2 int main()
3 {
4 int i, n3,n2,n1;
5 i=1;
6 while(i<=999)
7 {
8 /* 分解出i的百位n3、十位n2、个位n1;*/
9 n3=i/100 ;
10 n2=(i-n3*100)/10 ;
11 n1=i%10 ;
12 if ((i%3==0)&&(n3==5 ||n2==5 || n1==5))
13 printf(“%d,”,i);
14 i++;
15 }
16 return 0;
17 }
:(i%3==0)&&(n3==5 ||n2==5 || n1==5),是否可以?
答:不可以,在C语言中,if后面的布尔表达式从整体上一定要用圆括号全部括住。
~999中能被3整除,或者至少有一位是5的所有整数。
~999之间用5除余3并且用7除余4的所有数。

第14讲 输出1~999中能被3整除,且至少有一位是5的所有整数 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数2
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小24 KB
  • 时间2018-02-21