| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4254 人关注过本帖
标题:c怎么判断数字的位数
只看楼主 加入收藏
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
以下是引用星梦缘在2007-4-1 12:27:14的发言:
7楼: 好象楼主还没学到数组..
所以a[i] 用不了啊....
8,9楼的意见很好...

没学过数组就再用一个循环求位数就可以了,只不过以时间为代价,用字符串的话浪费空间

熊掌与鱼不可兼得

#include<math.h>
for(i=0;;i++)
{
if(n%(int)pow(10,i))
break;
}
最后得到的I就是位数


雁无留踪之意,水无取影之心
2007-04-01 12:34
crackerwang
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:833
专家分:0
注 册:2007-2-14
收藏
得分:0 
以下是引用卧龙孔明在2007-4-1 11:36:38的发言:

无必要
用字符串读入,倒序输出即可

如果一定要判断位数,可以以字符串读入,然后strlen();即可

haha,
斑竹回来了


2007-04-01 13:49
yigedaizi
Rank: 1
等 级:新手上路
帖 子:123
专家分:0
注 册:2006-11-24
收藏
得分:0 
以下是引用卧龙孔明在2007-4-1 11:36:38的发言:

无必要
用字符串读入,倒序输出即可

如果一定要判断位数,可以以字符串读入,然后strlen();即可


layman on C#
2007-04-01 17:04
无玩过界
Rank: 1
等 级:新手上路
威 望:2
帖 子:246
专家分:0
注 册:2007-2-20
收藏
得分:0 
大家似乎忽略LZ的话,我的疑问是:随便输入一个整数,怎么判断是几位数呢?从而分离出每个数字
如果不是编译器问题,这个可以接受。
#include<stdio.h>
int main()
{
long a,sum=0;
scanf("%ld",&a);
while(a)
{
sum=sum*10+a%10;
a/=10;
}
printf("%ld",sum);
return 0;
}

2007-04-01 18:13
applegrape02
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-3-21
收藏
得分:0 
#include<stdio.h>
void main()
{
int a;
int quyu=0;
printf("输入要变换的数:");
scanf("%d",&a);
while (a>0)
{
quyu=a%10;
printf("%d",quyu);
a=(a-quyu)/10;
}
printf("\n");
}
2007-04-02 21:30
快速回复:c怎么判断数字的位数
数据加载中...
 
   



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

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