求一个整数n有几位数,各位数之和(例如:123有3位数,和为6),这个程序哪里错了

作者&投稿:悟净 (若有异议请与网页底部的电邮联系)
输入一个整数,求它的位数及各位数字之和。例如,123的位数是3,各位数字之和是6 我错在哪里了 求解啊。。~

#include
int main(void) {
int n, s = 0, i = 0, a = 0;
printf("Input an integer:");
scanf("%d", &n);
while (n != 0) {
s += (n % 10);
n /= 10;
i += 1;
}
printf("%d %d
", s, i);
return 0;
}
//你的判断条件有问题
//导致你每次都少进一次循环
//要学习自己调试程序
//今后上千行的代码都需要自己调试的
//加油吧!
希望能帮助到你。

#includeusing namespace std;int main(){cout>num;cout<<"你输入的数字是:"<<num<<endl;void sumandnum(int num);sumandnum(num);return 0;}void sumandnum(int num){if(num==0) cout<<"位数是1,各位数字之和为0"<<endl;if(num<0) num=-num;static int count=0;static int sum=0;while(num){sum+=num%10;num/=10;++count;}cout<<"位数是"<<count<<endl<<"各位数字之和是"<<sum<<endl;}

n=n/10;这里n已经变成0了,你后面不能再用了,可以先定义一个t=n,在来使用t

#include<stdio.h>
int main()
{
    int n;
    scanf("%d",&n);
    int i=0,sum=0;
    do
    {
        sum+=n%10;
        n/=10;
        ++i;
    }while(n);
    printf("%d位数,和为%d",i,sum);
    return 0;
}



从键盘输入一个正整数n(n不超过9位),求出它是几位数。
要求出一个正整数n是几位数,可以使用对数函数或者循环语句。以下是两种方法:方法一:对数_

c语言编程 输入正整数n,求n是几位数
当你输入一个正整数n时,你需要编写一个C语言程序来确定n是几位数。这可以通过计算n的位数来实现。具体来说,你可以使用循环来将n除以10,直到n小于10为止。每次除以10时,计数器加1,最终计数器的值就是n的位数。以下是一个简单的C语言程序,可以实现这个功能:```include <stdio.h> int main(...

一个正整数N最多能被几个整数整除?
N的最大值是9867312。解:因为N是一个各位数字互不相等的自然数。。即N这个数可能是有0,1,2,3,4,5,6,7,8,9,0这几个数中的数字组成。且它能被它的每个数字整除。那么N这个数字中不能含有0,因为0不能作除数。由于N中没有0,那么5和偶数(2,3,6,8)不能同时存在。所以N中...

随机产生一个不多于5位的正整数n python判断n是几位数并求出n各位数字...
随机产生一个不多于5位的正整数n,python判断n是几位数并求出n各位数字之和要求为求它是几位数,逆序打印出各位数字。a=12345。python介绍:Python由荷兰国家数学与计算机科学研究中心的吉多·范罗苏姆于1990年代初设计,作为一门叫作ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面...

n是一个正整数,如果n乘以n的十位数字是7,那么n乘以n的个位数字是多少...
由7分解因数为7=1*7;但1和7都不是大于10的数,都不能是n,因为n有十位数字.所以没有这样的n

C语言 编写一个程序,输入一个正整数,求出它是几位数。
求一个正整数n的位数可以先定义一个变量num,并初始化为0,依次把该整数n除以10,直到其为0为止,并且每除一次10,变量num的个数就自加1,最后num的值就是该整数n的位数。include <stdio.h> int main(){ int n,num=0;scanf("%d",&n);while(n){ num++;n\/=10;} printf("%d\\n",num)...

python整数有多少位?
python3中整数的最大值是有限的,该界限受计算机字长的限制吗?python2.x中一个整数最大占用64位,python3中,应该是没有限制的,而且也好像不会受到计算机字长的限制,即不会产生整数益处的问题。使用Python判断输入的整数位数并求出每个位上的值??对于给定的正整数N(N最大为5位数),求其整数位数,...

请输入任意一个正整数n,求出该数字为几位数字。
解决的办法很多.楼主想用程序的办法来解决吗?我写个伪代码给你参考下.i = 1 while(n \/ 10 > 0){ i = i + 1 n = n \/ 10 } print i 这里算出来的i就是n的位数.如果有什么不明白了,请追问.

N是一个三位整数,分别写出取它的个位、十位、百位上数字的赋值表达式...
个位、N%10 十位、N\/10%10 百位 N\/100

已知N等于2的十次方乘以5的八次方,则N是几位正整数?请再写出一个类似...
N=2的十次方乘以5的八次方 =(2×5)的8次方×4 =4×10的8次方 所以N是9位正整数 N=2的十一次方乘以5的九次方

朝阳县13290212420: c语言:正整数N,求它的位数及其各位数字之和.输入:不超过十的九次方.输出:N的位数及其各位数字 -
佴岭葵严: #include<stdio.h>#include<math.h> int main() { int n = 0; int sum = 0; //各位数和 int flag = 0; int sum1 = 1; //多少位数 printf("请输入需要计算的数字:\n"); scanf("%d", &n); for(int i = 1; i <= 9; i++) //不超过十的九次方 { flag = n % pow(10, i...

朝阳县13290212420: JAVA编程 求出十进制整数n的各位数字之和 -
佴岭葵严: static int sigmaDigit( int m ) { int sum = 0, d; while( m> 0 ){ d= m%10 ; m= m/10 ; sum+=d; } return sum; }满意请采纳

朝阳县13290212420: 从键盘上输入一个正整数n,计算该数的各位数字之和 -
佴岭葵严: #include int main() { int a; int sum = 0; scanf("%d",&a); if(a <= 0) return 0; while(a != 0) { sum += a % 10; a /= 10; } printf("%d\n", sum); return 1; }

朝阳县13290212420: 1、编写一个程序,求一个十进制整数N的各位数字之和.(设N为小于或等于4位的数) -
佴岭葵严: int i=6789; int j=0; j=i/1000+i%1000/100+i%100/10+i%10;

朝阳县13290212420: 输入一个整数n.求每位数字之和用vb程序 -
佴岭葵严: 代码如下: a = InputBox("请输入一个整数", "输入") n = Len(a) For i = 1 To n tmp = Val(Mid(a, i, 1)) Sum = Sum + tmp Next MsgBox Sum MsgBox a & n & i

朝阳县13290212420: 给出一个十进制整数n输出n的各位数字之和 -
佴岭葵严: #include int main() {int n,s=0; scanf("%d",&n); while(n) {s+=n%10; n/=10; } printf("%d\n",s); return 0; }

朝阳县13290212420: 给定一个十进制整数n,输出n的各位数字之和 -
佴岭葵严: int num = 321; int sum = 0 ; int i =10; while((num/i)>=1){sum+=num%i; i*10;} 依次得出sum为1+2+3=6;

朝阳县13290212420: 输入n个正整数,计算每个整数各位数字的和 c语言 -
佴岭葵严: #include<stdio.h> int main() {int a[100],b[100]={0},i,n;scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",&a[i]);for(;a[i];a[i]/=10)b[i]+=a[i]%10; } printf("%d个数字各位数之和:\n",n); for(i=0;i<n;i++)printf("%d ",b[i]); printf("\n"); return 0; }

朝阳县13290212420: 使用do - while编程,输入一个整数,求它的各位数字之和及位数. -
佴岭葵严: #include<stdio.h> void main() { int n,a=0,b=0; scanf("%d",&n); do { a+=n%10; n=n/10; b++; }while(n!=0); printf("各位数字之和%d\n位数%d",a,b); }

朝阳县13290212420: c语言程序题 输入一个整数,求它的位数及各位数字之和.例如,123的位数是3,各位数字之和是6. -
佴岭葵严: 如果不用log函数,并假设输入的数indata是非负整数,则可以如下: int n, s; n = 0; s = 0; while ( indata ) { n++; s += indata % 10; indata /= 10; } 位数在n中,和在s中.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网