Board logo

标题: 批处理脚本实现C语言趣味编程百例005:求最大数 [打印本页]

作者: jinzeyu    时间: 2012-3-3 15:35     标题: 批处理脚本实现C语言趣味编程百例005:求最大数

本帖最后由 jinzeyu 于 2012-3-3 21:11 编辑

这道题很简单 要求用批处理实现
加分:一个技术分
问555555的约数中最大的三位数是多少?
*问题分析与算法设计
根据约数的定义,对于一个整数N,除去1和它自身外,凡能整除N的数即为N的约数。因此,最简单的方法是用到2之间N-1的所有数去除N,即可求出N的全部约数。本题只要求取约数中最大的三位数,则其取值范围可限制在100到999之间
*程序说明与注释
  1. #include<stdio.h>
  2. int main()
  3. {
  4. long i;
  5. int j;
  6. printf("Please input number:");
  7. scanf("%ld",&i);
  8. for(j=999;j>=100;j--)
  9. if(i%j==0)
  10. {
  11. printf("The max factor with 3 digits in %ld is:%d,\n",i,j);
  12. break;
  13. }
  14. }
复制代码
*运行结果
输入:555555
输出:The max factor with 3 digits in 555555 is:777
作者: jinzeyu    时间: 2012-3-3 15:46

本帖最后由 jinzeyu 于 2012-3-3 16:10 编辑

我的代码:
代码内容设置的颜色为white
显示方法 1:按住鼠标左键,框住代码即可。
显示方法 2:Ctrl + A
  1. @echo off&setlocal enabledelayedexpansion&for /l %%i in (999 -1 100) do (set/ai=555555%%%%i&if "!i!"=="0" (echo The max factor with 3 digits in 555555 is:%%i&pause>nul&exit))
复制代码

作者: Seder    时间: 2012-3-3 17:30

你的C语言代码有个地方错了,j--
作者: applba    时间: 2012-3-3 18:23

没有缩进的代码看的真蛋疼
作者: find    时间: 2012-3-3 20:49

怎么两个题目完全不同啊?
http://www.bathome.net/thread-15713-1-1.html
作者: jinzeyu    时间: 2012-3-3 20:55

回复 5# find


    这个当然不同了......
作者: find    时间: 2012-3-3 21:05

回复 6# jinzeyu


刚才明明是两个004
作者: jinzeyu    时间: 2012-3-3 21:09

回复 3# Seder


    额 确实是j--不是j- 已在VC++ 2010 上测试
作者: jinzeyu    时间: 2012-3-3 21:24

回复 7# find


   
作者: jinzeyu    时间: 2012-3-4 09:45

为什么表情发不了?




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2