求任意输入一个数字 求他的位数和各位数之和

原创 2006年06月05日 23:35:00

/**********************************************************
求任意输入一个数字 求他的位数和各位数之和!(最大5位数子)
 
<Edison wong>. QQ139767
**********************************************************/
#include <stdio.h>
void main()
{
 int a,b,c,d,e,f,g;
 scanf("%d",&a);
 if(a/10000>=1&&a/10000<10)
 {
  printf("%d是五位数!/n",a);
  putchar('/n');
  b=a/10000;
  c=(a-b*10000)/1000;
  d=(a-b*10000-c*1000)/100;
  e=(a-b*10000-c*1000-d*100)/10;
  f=a-b*10000-c*1000-d*100-e*10;
  g=b+c+d+e+f;
  printf("各位数字的和是%d!/n",g);
 }
 else if(a/1000>=1&&a/1000<10)
 {
  printf("%d是四位数!/n",a);
  putchar('/n');
  b=a/1000;
  c=(a-b*1000)/100;
  d=(a-b*1000-c*100)/10;
  e=a-b*1000-c*100-d*10;
  g=b+c+d+e;
  printf("各位数字的和是%d!/n",g);
 }
 else if(a/100>=1&&a/100<10)
 {
  printf("%d是三位数!/n",a);
  putchar('/n');
  b=a/100;
  c=(a-b*100)/10;
  d=a-b*100-c*10;
  g=b+c+d;
  printf("各位数字的和是%d!/n",g);
 }
 else if(a/10>=1&&a/10<10)
 {
  printf("%d是二位数!/n",a);
  putchar('/n');
  b=a/10;
  c=a-b*10;
  g=b+c;
  printf("各位数字的和是%d!/n",g);
 }
 else if(a/1>=1&&a/1<10)
 {
  printf("%d是一位数!/n",a);
  putchar('/n');
  g=a;
  printf("各位数字的和是%d!/n",g);
 }

 

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java:多重循环for、while、do-while(简单判断是否是四位整数、1-100累加,水仙花、最大公约数。最小公倍数、完数、输入任意数计算每位数之和、弹力球问题)

package jereh1; import java.util.Scanner; public class Class3Xunhuan { public static void main(St...

java小练习(从键盘上输入一个整数,计算各个位数之和)

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: ...

特殊回文数字:求出5位数和6位数中各位上的数字之和为n的回文数。

问题描述   123321是一个非常特殊的数,它从左边读和从右边读是一样的。   输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。 输入格式   输入一行,包含一个正...

iOS 数字键盘限制输入的位数以及小数点的位数

具体操作直接看代码了:- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range r...

欧拉工程第13题 找出100个50位数之和的前十位数字

题目 找出以下100个50位数之和的前十位数字。

DigitSum(n) 输入一个非负整数,返回组成它的数字之和, 调用DigitSum(1729),返回1+7+2+9,和19 和出现的一些问题

/*写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和, 例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19*/ #include #inclu...

快速找出一个数组中的两个数,让这两个数字之和定于一个给定的值(编程之美2.12)

问题:快速找出一个数组中的两个数,让这两个数字之和定于一个给定的值 解法一:用两层循环,时间复杂度为O(N*N),不可取。代码如下: #include #include int ...

Project Euler16.求2^1000的各位数之和

我们知道 2^10=1024,它的各位数之和为1+0+2+4=7。 对于2^1000这样一个庞大的数据,恐怕是我们普通计算机所不能承受的,因此我们不能直接球出2^1000的结果。显然现在我们只有找其...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)