《C语言》函数练习题--3

发布于:2025-08-09 ⋅ 阅读:(18) ⋅ 点赞:(0)

《C语言》函数练习题–3

11. 计算字符串中元音字母的个数

题目描述:
编写一个C程序,定义一个函数countVowels,接受一个字符串参数,返回字符串中元音字母(a, e, i, o, u)的个数。在main函数中调用该函数并输出结果。

解题思路:
创建一个名为countVowels的函数,通过遍历字符串,检查每个字符是否为元音字母(不区分大小写),若是,则增加计数器。最后返回计数器的值。在main函数中,提示用户输入一个字符串,调用countVowels函数并打印结果。

详细代码:

#include <stdio.h>
#include <ctype.h> // 用于tolower函数

// 定义函数countVowels,返回字符串中元音字母的个数
int countVowels(char str[]) {
   
   
    int count = 0;
    for(int i = 0; str[i] != '\0'; i++) {
   
   
        char ch = tolower(str[i]); // 将字符转换为小写
        if(ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u')
            count++;
    }
    return count;
}

int main() {
   
   
    char input[100];
    int vowelCount;
    
    // 提示用户输入一个字符串
    printf("请输入一个字符串: ");
    fgets(input, sizeof(input), stdin);
    
    // 去除fgets读取的换行符
    int i;
    for(i = 0; input[i] != '\0'; i++) {
   
   
        if(input[i] == '\n') {
   
   
            input[i] = '\0';
            break;
        }
    }
    
    // 调用countVowels函数计算元音字母的个数
    vowelCount = countVowels(input);
    
    // 输出结果
    printf("字符串中元音字母的个数是 %d。\n", vowelCount);
    
    return 0;
}

代码注释:

  • int countVowels(char str[]):定义一个函数countVowels,接受一个字符串参数,返回元音字母的个数。

  • char ch = tolower(str[i]);:将当前字符转换为小写,便于比较。

  • if(ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u'):检查当前字符是否为元音字母,若是,则增加计数器。

  • main
    

    函数中:

    • 使用fgets读取用户输入的字符串,包括空格。
    • 遍历字符串,遇到换行符\n则替换为\0
    • 调用countVowels(input)函数,获取元音字母的个数并存储在vowelCount变量中。
    • 使用printf输出结果。

12. 计算数组元素的平均数和标准差

题目描述:
编写一个C程序,定义两个函数:calculateAverage,计算数组元素的平均值;calculateStdDev,计算数组元素的标准差。在main函数中调用这两个函数并输出结果。

解题思路:
创建两个函数:

  1. calculateAverage:遍历数组,累加所有元素的值,计算平均值。
  2. calculateStdDev:先调用calculateAverage获取平均值,然后遍历数组,计算每个元素与平均值的差的平方,求和后取平均,再开平方得到标准差。 在main函数中,提示用户输入数组的大小和元素,调用这两个函数并打印结果。

详细代码:

#include <stdio.h>
#include <math.h>

// 定义函数calculateAverage,返回数组元素的平均值
double calculateAverage(int arr[], int size) {
   
   
    if(size == 0)
        return 

网站公告

今日签到

点亮在社区的每一天
去签到