How to count the digits in a string in C

3 Answers

0 votes
#include <stdio.h>
#include <ctype.h> 

int main(void)
{
    int digits = 0;
    char *p, *s = "abc 3 def59g hi 0 jkl 444";
    
    p = s;
    while (*p != '\0') 
    {
        if (isdigit(*p)) 
            digits++;
            
        p++;
    }
    printf("digits = %i", digits);
     
    return 0;
}
 

/*
run:
 
digits = 7

*/


answered Oct 1, 2014 by avibootz
edited Oct 1, 2014 by avibootz
0 votes
#include <stdio.h>
#include <ctype.h>

int main(void)
{
    int digits = 0, i = 0;
    char s[] = "abc 3 def59g hi 0 jkl 444";
     
    while ( s[i] ) 
    {
        if (isdigit(s[i])) 
            digits++;
             
        i++;
    }
    printf("digits = %i", digits);

    return 0;
}

  
/*
  
run:
  
digits = 7

*/

 



answered Nov 6, 2015 by avibootz
0 votes
#include <stdio.h>
#include <ctype.h>

int main(void)
{
    int digits = 0, i = 0;
    char s[] = "abc 3 def59g hi 0 jkl 444";
     
    while ( s[i++] ) 
    {
        if (isdigit(s[i])) 
            digits++;
    }
    printf("digits = %i", digits);

    return 0;
}

  
/*
  
run:
  
digits = 7

*/

 



answered Nov 6, 2015 by avibootz

Related questions

1 answer 136 views
1 answer 133 views
133 views asked Jul 2, 2020 by avibootz
1 answer 97 views
1 answer 91 views
91 views asked Jul 21, 2024 by avibootz
1 answer 120 views
1 answer 103 views
1 answer 114 views
...