c语言分离三位数的实现

2022-11-13 10:11:35 语言 分离 位数

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;   
	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;
}

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

相关文章