【问题标题】:count the number of digits in a string [closed]计算字符串中的位数[关闭]
【发布时间】:2019-03-24 18:35:36
【问题描述】:

我需要实现一个可以计算字符串中位数的函数,这是我的代码不起作用,我需要知道问题出在哪里。 int main() {

/* Enter your code here. Read input from STDIN. Print output to STDOUT */
char s[100];
scanf("%s",s);
int i,j=0;
for(i=0;i<10;i++)
{
    int freq=0;
    while(s[j] != '\0')
    {
        if(s[j] == i +'0')
        {
            freq++;
        }
        j++;
    }
    printf("%d ",freq);

}    
return 0;

}

【问题讨论】:

  • 在每次迭代时不将 j 重置为零是问题所在。您只需使用 s[j]-'0' &lt; 10 &amp;&amp; s[j]-'0' &gt;= 0 测试的 1 个循环即可完成此操作
  • 查看stackoverflow.com/questions/20446042/… 以获得更好的选择

标签: c


【解决方案1】:

在每次 for 循环迭代后将 j 重置为 0

【讨论】:

  • 它有效,非常感谢。
  • 没有问题,纳达。
猜你喜欢
  • 1970-01-01
  • 2014-03-23
  • 2015-10-31
  • 1970-01-01
  • 1970-01-01
  • 2015-02-10
  • 1970-01-01
  • 1970-01-01
  • 2023-01-28
相关资源
最近更新 更多