kttq.net
当前位置:首页 >> 整数位数 >>

整数位数

你写的实在是太繁琐了。这个是不可取的。你需要的这两个功能其实是可以一起实现的,虽然一楼说的很对,当我觉得应该不是你需要的那一种方案。 #include main() { int i=0,k; int a[10; printf("input a number:"); scanf("%d",&k); while(k>0) {...

思路:因为整数除以整数的结果是整数,所以一个数每除以10,位数就少1,所以可以采用while循环依次除以10,直到结果为0,每除以10位数加1。 参考代码: #includeint main(){ int i,n,sum=0; scanf("%d",&n); i=n; while(n){ sum++; n/=10; } pri...

若输入的数是整型,则可通过用该整数与10相除,然后用余数再和10相除。并且每除一次,用一变量记录个数。直到余数为0,然后给变量加1即可。(变量从0开始) 如果变量从1开始,最后就不要给变量加1了。 麻烦采纳,谢谢!

整数位数是整数中,不同数位所表示的数的大校

#include#includemain(){int n,k=0;scanf("%d",&n);while(n){n/=10;k++;}printf("%d",k);}第一种方法 #include#includemain(){int n,k;scanf("%d",&n);k=log(n)/log(10)+1;printf("%d",k);}第二种方法 #include#includemain(){char n[100],k;get...

下面给出例子: #include using namespace std; int main() { char buff[100]; int a=100; int b; b=sprintf(buff,"%d",a); printf("%d\n",b); return 0; } 在此程序中使用了为sprintf的函数; 格式为sprintf(字符型数组/字符型指针,要转换的数...

#include using namespace std; int main() { int a; cin>>a; int k=0; while(a) { a=a/10; k++; } cout

#include "stdio.h" int main() { int number,i=0,sum=0; printf("please input a number:"); scanf("%d",&number); while(number!=0) { sum+=number%10; number/=10; i++; } printf("sum=%d\n",sum); printf("位数=%d\n",i); return 0; }

思路:因为c语言中整数除以整数等于整数,所以一个数除以10就少一位,所以求一个数的位数可以依次除10操作,直到其位0,每除10该数的位数加1。 参考代码:...

楼主程序比较精简,98%能满足题目要求, 至于这个颠倒问题嘛,很好解决啊,先执行一次求位数,再执行一次求各位数字呗. 解决方案很多,给一种很弱智的办法,代码如下: #include void main() { int a,b,a_a; int i=0; scanf("%d",&a); a_a=a; if(0

网站首页 | 网站地图
All rights reserved Powered by www.kttq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com