| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 835 人关注过本帖
标题:不知道哪里写错了。。。
只看楼主 加入收藏
MuMuLee
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2016-1-16
结帖率:84.21%
收藏
已结贴  问题点数:10 回复次数:3 
不知道哪里写错了。。。
description
对于给定的一个字符串,统计其中数字字符出现的次数。


input
输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。


output
对于每个测试实例,输出该串中数值的个数,每个输出占一行。


sample_input
2
asdfasdf123123asdfasdf
asdf111111111asdfasdfasdf


sample_output
6
9




我的程序:
#include <stdio.h>
#include <stdlib.h>

int main()
{
     int i,n;
   scanf("%d",&n);
   for(i=0;i<n;i++)
   {
        int m=0;
        char c;
        c=getchar();
        while(c!='\n')
        {
          if(c>='0'&&c<='9')
          m++;
          c=getchar();
        }
        printf("%d",m);
   }

    return 0;
}
运行不起来。


但如果不是多组数据  int m=0;
        char c;
        c=getchar();
        while(c!='\n')
        {
          if(c>='0'&&c<='9')
          m++;
          c=getchar();
        }
        printf("%d",m);
这部分结果是对的。




到底哪里错了?
搜索更多相关主题的帖子: include 字符串 统计 字母 
2016-02-17 22:08
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:9 
主要是scanf("%d",&n)会把'\n'留在缓冲区被getchar取到,导致第一次统计结果为0,改成scanf("%d\n",&n)即可。

能编个毛线衣吗?
2016-02-17 22:16
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:1 
楼上的,学习了。

[此贴子已经被作者于2016-2-17 22:23编辑过]


   唯实惟新 至诚致志
2016-02-17 22:17
MuMuLee
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2016-1-16
收藏
得分:0 
回复 2楼 wmf2014
懂了 谢谢
2016-02-17 22:27
快速回复:不知道哪里写错了。。。
数据加载中...
 
   



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

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