c语言 函数const
本题要求实现一个函数,可统计任一整数的每一位数字中的奇数之和。例如对于整数-31252,该函数应该返回9。
函数接口定义:
int Count_Digit ( const int N );
其中 N
是用户传入的参数。 N
的值不超过int
的范围。函数须返回 N
的每一位数字中的奇数之和。
裁判测试程序样例:
#include <stdio.h>
int Count_Digit ( const int N );
int main()
{
int N;
scanf("%d", &N);
printf("%d", Count_Digit(N));
return 0;
}
/* 请在这里填写答案 */
输入样例:
-31252
输出样例:
9
int Count_Digit(const int N) {
int n = N; // 将N的值复制到局部变量n中
if (n < 0) {
n = -n; // 如果n为负数,取其绝对值
}
int he = 0; // 初始化he为0,用于累加奇数位数字
int count = 0; // 用于记录当前处理到的位数
while (n > 0) {
int ge = n % 10; // 取出个位数字
n /= 10; // 去掉个位数字
count++; // 位数加1
if (ge % 2 != 0 && count % 2 != 0) { // 如果是奇数位的奇数数字,则累加
he += ge;
}
}
return he; // 返回所有奇数位数字的和
}
修改点如下:
- 添加了一个局部变量
n
来存储N
的值。 - 对
n
进行操作,而不是对N
进行操作,因为N
是const
的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)