编写一个函数利用指针统计输入的字符串中字符是数字且是偶数的和。要求:1、不在子函数中输出。2、不能修改指定的子函数:void StrSumchar stint sum
以下是函数的代码实现:
void StrSum(char *st, int *sum) {
*sum = 0; // 初始化sum为0
while (*st != '\0') { // 遍历输入的字符串
if (*st >= '0' && *st <= '9' && (*st - '0') % 2 == 0) { // 判断字符是否为数字且为偶数
*sum += *st - '0'; // 如果是,将其转换为数字并加到sum中
}
st++; // 指针指向下一个字符
}
}
在主函数中,可以先定义一个字符数组来存储输入的字符串,然后定义一个整型变量来存储统计结果。然后,调用函数StrSum来统计数字且为偶数的字符的和。最后,在主函数中输出统计结果。
以下是主函数的代码实现:
int main() {
char st[100]; // 定义字符数组
int sum; // 定义整型变量
printf("请输入一个字符串:");
gets(st); // 读入字符串
StrSum(st, &sum); // 调用函数StrSum
printf("数字且为偶数的字符的和为:%d\n", sum); // 输出统计结果
return 0;
}
``
原文地址: https://www.cveoy.top/t/topic/fbmR 著作权归作者所有。请勿转载和采集!