Write a recursive function count_digits()that counts all the digits in a string.This would be similar to function count()we covered during our last lecture,which counts the number of occurrences of a character chin a string str.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

In C program

Write a recursive function count_digits()that counts all the digits in a string.This would be similar to function count()we covered during our last lecture,which counts the number of occurrences of a character chin a string str.

Hint: Use function isdigit(str[0])to find out if str[0]is numeric.

```c
int count(char ch, const char *str)
{
    int ans;
    if (str[0] == '\0')        /* simple case */
        ans = 0;
    else                       /* redefine problem using recursion */
        if (ch == str[0])      /* first character must be counted */
            ans = 1 + count(ch, &str[1]);
        else                   /* first character is not counted */
            ans = count(ch, &str[1]);
    return (ans);
}
```

**Explanation:**

This C function, `count`, recursively counts the occurrences of a specific character `ch` in a string `str`.

- **Base Case:** If the first character of the string is the null character `'\0'`, it sets `ans` to 0, which means the end of the string has been reached.

- **Recursive Case:** 
  - If the first character of the string is equal to `ch`, it counts this character (adds 1) and makes a recursive call to `count` with the next character in the string.
  - If the first character is not equal to `ch`, it simply makes a recursive call, ignoring the first character.

- **Return Value:** The function returns the total count of `ch` in the string.
Transcribed Image Text:```c int count(char ch, const char *str) { int ans; if (str[0] == '\0') /* simple case */ ans = 0; else /* redefine problem using recursion */ if (ch == str[0]) /* first character must be counted */ ans = 1 + count(ch, &str[1]); else /* first character is not counted */ ans = count(ch, &str[1]); return (ans); } ``` **Explanation:** This C function, `count`, recursively counts the occurrences of a specific character `ch` in a string `str`. - **Base Case:** If the first character of the string is the null character `'\0'`, it sets `ans` to 0, which means the end of the string has been reached. - **Recursive Case:** - If the first character of the string is equal to `ch`, it counts this character (adds 1) and makes a recursive call to `count` with the next character in the string. - If the first character is not equal to `ch`, it simply makes a recursive call, ignoring the first character. - **Return Value:** The function returns the total count of `ch` in the string.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 2 images

Blurred answer
Knowledge Booster
Declaring and Defining the Function
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education