c语言分离三位数的实现

目录
  • c语言分离三位数
  • c语言数字分离
    • 题目
    • 初级代码
    • 第二种方法,可以用数组

c语言分离三位数

#include<stdio.h>
main(){
int k,l,m,n;
    printf("请输入一个三位数");
    scanf("%d",&k);
    l=k/100;
    m=k/10%10;
    n=k%10;
     printf("这个三位数的百位是:%d\n",l);
      printf("这个三位数的十位是:%d\n",m);
       printf("这个三位数的个位是:%d\n",n);
}

c语言数字分离

题目

思路:先判断位数,在进行分离。

初级代码

#include <stdio.h>
int main()
{
	int a,b=1,c=0,i;   /*a为输入正整数,c为正整数位数*/
	scanf("%d",&a);
	i=a;
	while(b!=0)
	{
		b=i/10;
		c++;
		i=i/10;
	}
	switch(c)
	{
		case 1:printf("%d",a);break;
		case 2:printf("%d,%d",a/10,a%10);break;
		case 3:printf("%d,%d,%d",a/100,a/10%10,a%100);break;
		case 4:printf("%d,%d,%d,%d",a/1000,a/100%10,a/10%10,a%10);break;
		case 5:printf("%d,%d,%d,%d,%d",a/10000,a/1000%10,a/100%10,a/10%10,a%10);break;
	}
	return 0;
 } 

这个方法还是太复杂,等我再想想更简单的方法再补充。

第二种方法,可以用数组

#include <stdio.h>
int main()
{
	int i;
	char c[6];
	scanf("%s",c);
	printf("%c",c[0]);
    for(i=1;c[i]!='\0';i++)
    printf(",%c",c[i]);
	return 0;
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • C语言算法积累分离数位示例

    题目:输出一个三位整数的个.十.百位数. 关键字:得到数位 思路: Q:如何利用简单的基本运算来得到一个数字的各个数位上的数字? A:利用除法和求余运算:以153为例 首先,百位最容易得到:153/100=1.任何三位数除以100都是得到其百位的数字 其次,个位也好弄:153%10=3.任何三位数对10取余都是其个位数. 最后,十位数有四个方法. 最好想的: 1.用(原三位数—百位数* 100—个位数 * 1)/10 153-1X100-1X3=50; 50/10=5 2.将原三位数对100取余

  • c/c++ 奇技淫巧(一些c语言的技巧)

    一. 变长数组 严格说来,变长数组的实现在c++中并不是一件麻烦的事情.Stl中的vector本身就是一个变长数组,并且有自动管理内存的能力. 但是在c中,实现变长数组就稍显麻烦.用C实现,必然需要一个结构,结构当中应当有一个指针,指针分配一段内存空间,空间大小根据需要而定,而且必须有另外一个字段记录究竟开辟了多大多长的空间. 大致描述如下: Struct MutableLenArray { Int count; Char* p; }; P = new Char[Count]; 没什么问题,但是

  • c语言分离三位数的实现

    目录 c语言分离三位数 c语言数字分离 题目 初级代码 第二种方法,可以用数组 c语言分离三位数 #include<stdio.h> main(){ int k,l,m,n; printf("请输入一个三位数"); scanf("%d",&k); l=k/100; m=k/10%10; n=k%10; printf("这个三位数的百位是:%d\n",l); printf("这个三位数的十位是:%d\n",m

  • C语言中组成不重复的三位数问题

    目录 C语言组成不重复的三位数 (1)通用思路 (2)排除思路 打印1234组成的不重复三位数 C语言组成不重复的三位数 对于这个问题,我有两种解决思路 第一种较为简单 第二种较为复杂 (1)通用思路:根据数组中的数字自由组合成三位数 (2)找出最小数和最大数并以此为循环边界(目的在于缩小循环的范围,提高效率),之后根据不断循环,将不符合要求的数字排除,在某些题中会简便许多 ·由1,2,3,4组成的不重复的三位数 (1)通用思路 #include <stdio.h>   int main()

  • Python输出由1,2,3,4组成的互不相同且无重复的三位数

    题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源代码 方法1: #!/usr/bin/python # -*- coding: UTF-8 -*- for i in range(1,5): for j in range(1,5): for k in range(1,5): if( i != k ) and (i != j) and (j != k):

  • java判断三位数的实例讲解

    java怎么判断三位数 先定义个测试数字,如图 然后可以把数字转换成字符串来判断它的长度是否为3,如图 获取判断数字范围是否在100到1000之间的值,如图 在或者判断数字大于100且除以100或是小于10的数,如图 使用循环处理2次10或还有值,这时在判断这个值除以10后是不是等于0 ,如图 如果是小数值需要判断可以把数字转成字符串然后在替换掉小数点来判断长度也可以,如图

  • python组合无重复三位数的实例

    # -*- coding: utf-8 -*- # 简述:这里有四个数字,分别是:1.2.3.4 #提问:能组成多少个互不相同且无重复数字的三位数?各是多少? def f(n): list=[] count=0 for i in range(1,n+1): for j in range(1, n+1): for k in range(1, n+1): if i!=j and j!=k and i!=k: list.append(i*100+j*10+k) count=len(list) prin

  • Python判断一个三位数是否为水仙花数的示例

    如下所示: daffodil = int(input('请输入一个三位数:')) if daffodil == pow(daffodil // 100 , 3) + pow(daffodil % 10 , 3) + pow(daffodil // 10 % 10, 3): print("这是一个水仙花数%d" % daffodil) else: print("这不是一个水仙花数%d" % daffodil) 以上这篇Python判断一个三位数是否为水仙花数的示例就是

  • python使用循环打印所有三位数水仙花数的实例

    首先水仙花数是什么? 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI).自恋数.自幂数.阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). 条件:它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). python-while

  • python输入一个水仙花数(三位数) 输出百位十位个位实例

    我就废话不多说了,大家还是直接看代码吧! # python输入一个水仙花数(三位数) 输出百位十位个位 """ 从控制台输入一个三位数num, 如果是水仙花数就打印num是水仙花数, 否则打印num不是水仙花数 """ """ 任务: 1.定义变量num用于存放用户输入的数值 2.定义变量gw.sw.bw分别用于存放输入的三位数的个位,十位,百位 3.定义变量total,用于存放各位数字立方和 4.用if语句判断各位

  • Java语言通过三种方法实现队列的示例代码

    目录 队列 图解 数组模拟队列 队列优化—循环队列 代码 使用java内部队列 代码 队列 队列是一种特殊的线性表,只允许在表的前端进行删除操作,在表的后端进行插入操作. 队列是一个有序列表,可以用数组或是链表来实现. 遵循先入先出的原则.即:先存入队列的数据,要先取出.后存入的要后取出. 就相当于我们日常生活中的排队,先来先服务,后来的只能在后面进行排队等待. 图解 数组模拟队列 通过对定义的了解,发现队列很像我们的数组,那我们是不是可以通过数组来模拟队列,下面我们来实践一下. 首先先分析一下

  • 关于python中逆序的三位数

    目录 python逆序的三位数 思路 Python三位数逆序输出基础方法 1.利用切片操作 2.利用for循环 3.数学方法 4.字符串的“索引”+“连接”操作 python逆序的三位数 程序每次读入一个正3位数,然后输出按位逆序的数字.注意:当输入的数字含有结尾的0时,输出不应带有前导的0.比如输入700,输出应该是7. 输入格式: 每个测试是一个3位的正整数. 输出格式: 输出按位逆序的数. 输入样例: 123 输出样例: 321 思路 在这里讲两个思路吧 1.使用切片的方法 使用字符串切片

随机推荐