用C语言写一个函数,要怎么用指针把奇数提取出来,然后再用这些奇数组成一串新的数 如果全是偶数,如24224时输出值为-1?
1条回答 默认 最新
- threenewbee 2018-10-28 07:04关注
规范的写法是:
void foo(int n, int * result) { *result = 0; int base = 1; int oc = 0; while (n != 0) { if (n % 2 == 1) { oc = 1; *result += (n % 10) * base; base *= 10; } n /= 10; } if (!oc) *result = -1; }
这个办法奇数、偶数都适用
但是因为你是奇数,所以,如果结果是0,就可以判定没有出现偶数了。void foo(int n, int * result) { *result = 0; int base = 1; while (n != 0) { if (n % 2 == 1) { *result += (n % 10) * base; base *= 10; } n /= 10; } if (*result == 0) *result = -1; //仅需要加上一行 }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1
悬赏问题
- ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
- ¥20 关于URL获取的参数,无法执行二选一查询
- ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
- ¥15 marlin编译错误,如何解决?
- ¥15 有偿四位数,节约算法和扫描算法
- ¥15 VUE项目怎么运行,系统打不开
- ¥50 pointpillars等目标检测算法怎么融合注意力机制
- ¥20 Vs code Mac系统 PHP Debug调试环境配置
- ¥60 大一项目课,微信小程序
- ¥15 求视频摘要youtube和ovp数据集