| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1149 人关注过本帖
标题:从字符串中提取数字
只看楼主 加入收藏
牧人马
Rank: 4
等 级:业余侠客
威 望:6
帖 子:49
专家分:229
注 册:2017-12-24
结帖率:33.33%
收藏
已结贴  问题点数:5 回复次数:3 
从字符串中提取数字
以下是自己写的程序,在Code::blocks运行没问题:
程序代码:
#include<stdio.h>
int main()
{
    char name[80];
    gets(name);
    int i;
    for(i=0;i<80;i++)
    {
        if(name[i]>47&&name[i]<58)
            printf("%c",name[i]);
    }
    printf("\n");
    return 0;
}
在oj上的运行结果总会多几个数字
图片附件: 游客没有浏览图片的权限,请 登录注册

有什么可以改进的地方或者是出现此类错误的原因吗?

搜索更多相关主题的帖子: 字符串 提取 数字 name printf 
2017-12-25 22:57
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:3 
改这句:
    //for(i=0;i<80;i++)
    for(i=0;name[i]&&i<80;i++)

2017-12-26 06:23
虫眼
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:10
帖 子:314
专家分:1121
注 册:2017-11-29
收藏
得分:3 
if((name[i]>='0')&&(name[i]<='9'))
2017-12-26 09:54
虫眼
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:10
帖 子:314
专家分:1121
注 册:2017-11-29
收藏
得分:0 
多数字是因为你弄了一个野数组
char name[80]={0}; 改成这样

2017-12-26 10:53
快速回复:从字符串中提取数字
数据加载中...
 
   



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

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