| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1049 人关注过本帖
标题:编程求数字
只看楼主 加入收藏
雪狼MJ
Rank: 8Rank: 8
来 自:甘肃
等 级:蝙蝠侠
威 望:4
帖 子:267
专家分:853
注 册:2012-5-27
收藏
得分:0 
额,这还有个版权问题: 以上代码借鉴于我叫沃恩的代码,我只是在原有的基础上添加了几条语句而已。

版权,版权。。。。。

顺便问一下,沃恩是谁?某个电影中的?

Edsger Dijkstra:算法+数据结构=程序
2013-05-24 13:03
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:0 
回复 9楼 雪狼MJ
谢谢啦!又学会了一点东西!!!

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-05-24 13:05
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:0 
回复 11楼 雪狼MJ
<<拯救大兵瑞恩>>然后改了一下!嗨,你好,交个朋友!

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-05-24 13:07
海上钢琴师
Rank: 2
等 级:论坛游民
帖 子:24
专家分:46
注 册:2013-4-18
收藏
得分:4 
程序代码:
#include<stdio.h>
int main()
{
    int  i,count=0;
    char str[5];
    for(i=1;i<100;i++)
    {
        itoa(i,str,10);
        if(str[0]=='9')
        count++;
        if(str[1]=='9')
        count++;
    }
    printf("%d",count);
}
#include<stdio.h>
int main()
{
    int  i,count=0;
    for(i=1;i<100;i++)
    {
        if(i/10==9)
        count++;
        if(i%10==9)
        count++;
    }
    printf("%d",count);
}
两种方法。

天行健!君子以自强不息;地势坤!君子以厚德载物。
2013-05-24 13:07
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:4 
i%10==9 或者 (int)(i/10)==9 都应统计在内
试一试我的码:
#include<stdio.h>
void main ()
{
     int i=1,num_9=0;
     while(i<=100)
     {
         if(i%10==9 || (int)(i/10)==9) num_9++;
         i++;
     }
     printf("1-100之间含9的数字总数为:%d\n",num_9);
}
2013-05-24 16:14
mscool
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2013-5-9
收藏
得分:0 
回复 9楼 雪狼MJ
理解不了你的思路  你的目的是想减少运行次数?这个有什么好处吗?
 if(b!=8) i+=9;这段代码是要做什么?
第一个和第三个分支中的n可以实现累加吗?
2013-05-24 18:01
mscool
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2013-5-9
收藏
得分:0 
回复 15楼 zhu_zhi
这个虽然更简单 但是我还是觉得我那个更稳妥一些 出现bug容易查  分步设计嘛
2013-05-24 18:05
雪狼MJ
Rank: 8Rank: 8
来 自:甘肃
等 级:蝙蝠侠
威 望:4
帖 子:267
专家分:853
注 册:2012-5-27
收藏
得分:0 
回复 16楼 mscool
可以跳过一些没用的数字,比如说这样现在i=9

在进行了n+1后n=1

然后i会一直加,直到19为止才是有用的。

这当中程序执行i=10,11,12.。。。。18,这些都会去判段循环体里的条件语句。

我在这里做的优化就是跳过这些没用的,更容易找到有用的。

你说这有什么用,我可以告诉你在这个程序中是没什么用的,因为这个程序的数据太少。

当数据很大,我们不得不去考虑它的运行时间的时候,这就是个大问题了。

比如时说有个原本话费一天的时间去运行的算法,经过你的优化,可以让它在几小时内完成,这不更好吗?

当然,在这里它是个思想,算法思想。没别的。

Edsger Dijkstra:算法+数据结构=程序
2013-05-24 18:13
快速回复:编程求数字
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036316 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved