珂含笑 2023-12-10 23:49 采纳率: 100%
浏览 7
已结题

请问这应该怎么写,求解

img


编写函数f,由实参传来n个字符串,n不超过5,统计这些字符串中字母 数字 空格和其他字符的个数

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-12-11 00:17
    关注
    #include <stdio.h>
    
    int f(char ** a, int n, int * l, int * d, int * s, int * o)
    {
        *l = *d = *s = *o = 0;
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; a[i][j] != '\0'; j++)
            {
                if ((a[i][j] >= 'a' && a[i][j] <= 'z') || (a[i][j] >= 'A' && a[i][j] <= 'Z'))
                    *l += 1;
                else if (a[i][j] >= '0' && a[i][j] <= '9')
                    *d += 1;
                else if (a[i][j] == ' ')
                    *s += 1;
                else
                    *o += 1;
            }
        }
        return 0;
    }
    int main()
    {
        char a[100][100];
        char *p[5];
        int n;
        scanf("%d", &n);
        for (int i = 0 ; i < n; i++)
        {
            scanf(" %[^\n]s", &a[i][0]);
            p[i] = &a[i][0];
        }
        int l, d, s, o;
        f(p, n, &l, &d, &s, &o);
        printf("%d %d %d %d", l, d, s, o);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月19日
  • 已采纳回答 12月11日
  • 创建了问题 12月10日