| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 713 人关注过本帖
标题:[求助]一个关于scanf和printf的简单问题
只看楼主 加入收藏
mengge
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2005-2-10
收藏
 问题点数:0 回复次数:6 
[求助]一个关于scanf和printf的简单问题
我用scanf输入一个10进制的数,用printf怎么样以2进制的形式输出啊
例如输入16在屏幕上面显示10000
谢谢各位指点拉
急求
搜索更多相关主题的帖子: printf scanf 简单问题 
2005-03-12 21:56
magic475
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2005-1-14
收藏
得分:0 

#include <stdio.h> #define N 10 void main() { int a,i=0,j=0; int m[N];

clrscr(); scanf("%d",&a); while(a!=0) { a=a/2; m[i]=a%2; i++; } j=i-1; for(i=0;i<=j;i++) { printf("%d",m[i]); } }

2005-03-13 00:25
为了c
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-2-2
收藏
得分:0 
以下是引用magic475在2005-3-13 0:25:53的发言:

#include <stdio.h> #define N 10 void main() { int a,i=0,j=0; int m[N];

clrscr(); scanf("%d",&a); while(a!=0) { a=a/2; //m[i]=a%2; m[i]=a%2; //a=a/2; i++; } j=i-1; for(i=0;i<=j;i++) //for(i=j;i>=0;i++) { printf("%d",m[i]); } }

对以上语句改动一下!


2005-03-14 19:03
地瓜
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-3-14
收藏
得分:0 
有道理~~~~~~~~~~~~~~

2005-03-15 09:54
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
得分:0 

对二楼只要改一个顺序就行了:

#include <stdio.h> #define N 10 void main() { int a,i=0,j=0; int m[N];

clrscr(); scanf("%d",&a); while(a!=0) { /*a=a/2; m[i]=a%2;*/ m[i]=a%2; //因为先后顺序错了。 a=a/2; i++; } j=i-1; for(i=j;i>=0;i--)//这一句也是顺序的问题 { printf("%d",m[i]); } }

[此贴子已经被作者于2005-3-15 11:12:34编辑过]

2005-03-15 10:59
mengge
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2005-2-10
收藏
得分:0 
我想也许是我 的表达有错把
这样输出的这个数字可以进行运算吗?
2005-03-15 15:25
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
收藏
得分:0 
这样输出的是一个数组   并不是二进制数   只是输出后看上去是二进制的

动于心而静如水
2005-03-15 16:34
快速回复:[求助]一个关于scanf和printf的简单问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.069058 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved