输入一个长度小于100的字符串将字符串中的下标为素数位置上的字母转为大写字母

题目描述

输入一个长度小于100的字符串将字符串中的下标为素数位置上的字母转为大写字母

案例代码

#include <stdio.h>
#include <string.h>
#include <ctype.h>

int is_prime(int n) {
    if (n <= 1) {
        return 0;
    }
    for (int i = 2; i * i <= n; i++) {
        if (n % i == 0) {
            return 0;
        }
    }
    return 1;
}

int main() {
    char str[100];
    printf("请输入一个长度小于100的字符串:");
    scanf("%s", str);

    int len = strlen(str);
    for (int i = 2; i < len; i++) {
        if (is_prime(i)) {
            str[i] = toupper(str[i]);
        }
    }

    printf("处理后的字符串为:%s\n", str);

    return 0;
}

这段代码首先定义了一个is_prime函数来判断一个数是否为素数,然后在主函数中输入字符串并对下标为素数位置上的字母进行转换为大写字母的处理。

© 版权声明
THE END
喜欢就支持一下吧
点赞6赞赏 分享