| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 760 人关注过本帖, 1 人收藏
标题:一道小题目交流--计算字符串中数字之和
只看楼主 加入收藏
loveClangage
Rank: 8Rank: 8
来 自:广东云浮
等 级:蝙蝠侠
帖 子:326
专家分:891
注 册:2013-8-23
收藏
得分:3 
努力吧,

编写的程序,不能改变世界,却可以改变自己...
2013-11-22 19:27
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
收藏
得分:0 
回复 8楼 longhai123
西安太远了,我在东莞,
要是真学好了,就不用问你培训班的事了。
2013-11-22 20:41
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:3 
关于含小数的计算,需要对 1.2.3 这种情况定义,是 1+2.3  1.2+3 还是1.2(.3作为字符串)

作第二种情况讨论:

程序代码:
#include <stdio.h>

int main()
{
    double sum = 0.0;    //数据的和
    double tmp;            //当前数据
    double flag;        //小数位标识
    char *p, *str = "a5.7dfg2.3.4df";        //测试字符串

    for (p = str; *p;)
    {
        while (*p && ('0' >= *p || '9' <= *p))
        {
            p++;
        }

        tmp = 0.0, flag = 0.1;
        while (*p && '.' != *p && '0' <= *p && '9' >= *p)
        {
            tmp *= 10, tmp += *p - '0';
            p++;
        }
        if (*p && '.' == *p)
        {
            p++;
            while (*p && '0' <= *p && '9' >= *p)
            {
                tmp += flag * (*p - '0');
                flag /= 10, p++;
            }
        }

        sum += tmp;
    }
    printf("%lf", sum);
    return 0;
}


[fly]存在即是合理[/fly]
2013-11-22 22:06
心浪网友
Rank: 2
等 级:论坛游民
帖 子:3
专家分:11
注 册:2013-11-21
收藏
得分:3 
学习
2013-11-22 22:06
longhai123
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2013-11-20
收藏
得分:0 
回复 13楼 azzbcc
学习,多谢
2013-11-23 09:03
快速回复:一道小题目交流--计算字符串中数字之和
数据加载中...
 
   



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

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