简单是王道《二、用组件化重构系统的思考》
2008-09-23 11:00
148 查看
代码如下:
对此方法进行改进,通过移位法可以依次输出二进制序列。
代码如下:
#include<stdio.h> #include<stdlib.h> int main() { int num, count, i, a[32]; count = 0; i = 0; scanf("%d", &num); while (num) { a[i] = num % 2; num = num / 2; count++; i++; } printf("count=%d\n", count);/*输出位数的总数*/ for (i -= 1; i >= 0; i--) { printf("%d", a[i]); } printf("\n奇数位为:"); for (i = 0; i<count; i += 2)/*数组从a[0]开始的,故i<count*/ { printf("%d ", a[i]); } printf("\n偶数位为:"); for (i = 1; i <= count; i += 2) { printf("%d ", a[i]); } system("pause"); return 0; }上述方法只适合正数。
对此方法进行改进,通过移位法可以依次输出二进制序列。
代码如下:
#include<stdio.h> #include<stdlib.h> int main() { int num,i,j,m,a[16],b[16]; scanf("%d",&num); m=sizeof(a)/sizeof(a[0]); for(i=0,j=0;j<32;i++,j+=2) { a[m-1-i]=(num>>j)&1;/*num向右移动j位,数组a被倒序输入,数组a为偶数位*/ } printf("奇数位为:"); for(i=0;i<m;i++) { printf("%d ",a[i]); } for(i=0,j=1;j<32;i++,j+=2) { b[m-1-i]=(num>>j)&1;/*num向右移动j位,数组b被倒序输入,数组b为奇数位*/ } printf("\n偶数位为:"); for(i=0;i<m;i++) { printf("%d ",b[i]); } printf("\n二进制序列为:"); for(i=0;i<m;i++) { printf("%d%d",b[i],a[i]); } system("pause"); return 0; }本文出自 “Scen” 博客,请务必保留此出处http://10741357.blog.51cto.com/10731357/1701379
相关文章推荐
- CIO应用商业智能技术系统的重构思考
- CIO应用商业智能技术系统的重构思考
- 【读书笔记-重构与模式】 Facade外观模式-为系统提供统一简单接口
- CIO应用商业智能技术系统的重构思考
- 好友系统重构+新功能开发的思考
- 大型系统重构的步骤简单梳理
- 软件工程革命三部曲 —— 系统开发的业务部分重构在思考。
- 企业商业智能技术系统应用的重构思考
- 系统业务进化重构之数据迁移--落地思考
- 个人重构机房收费系统报表使用之最简单的显示连接
- 系统重构的简单步骤
- CIO应用商业智能技术系统的重构思考
- 简单是王道《十二、对于敏捷软件开发的思考》
- 重构代码的简单思考
- CIO应用商业智能技术系统的重构思考
- 大型系统重构的步骤简单梳理
- Ubuntu13.10系统禁用独显(简单好用)
- Python django实现简单的邮件系统发送邮件功能
- LINUX下一个简单的UDP验证通信系统
- 一个简单用户系统的设计