C语言--数字特征值编程

本文介绍了如何使用C语言解决一个编程练习,该练习要求计算整数的奇偶特征值。通过从右向左遍历数字的每一位,根据位数和数字的奇偶性确定二进制串,并将其转换为十进制值。例如,数字342315的奇偶特征值二进制串为001101,对应的十进制结果为13。
摘要由CSDN通过智能技术生成

最近在学习翁恺老师的“程序设计入门——C语言”课程。在循环中有一个求数字特征值的练习题,挺有意思。

本程序实现思路:用while循环,从右往左计算。在不用幂指数的情况下,在循环中很好的实现了对当前二进制位对应十进制的值进行了转换。

数字特征值(5分)

题目内容:

 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性相同,则记下一个1,否则记下一个0。按照整数的顺序把对应位的表示奇偶性的0和1都记录下来,就形成了一个二进制数字。比如,对于342315,这个二进制数字就是001101。

这里的计算可以用下面的表格来表示:

数字

3

4

2

3

1

5

数位

6

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值