C语言练习:实现数位分离的三种方法

题目描述:

输入任意一个四位整数,依次输出个位、十位、百位、千位上的数字。以空格间隔,但最后一个数据的后面没有空格,直接换行。

方法一:

#include
int main ()
{
	char d1,d2,d3,d4;  // d1,d2,d3,d4 分别代表千位、百位、十位、个位
	scanf("%c%c%c%c",&d1,&d2,&d3,&d4);
	printf("%c %c %c %c\n",d4,d3,d2,d1);
	return 0;
 } 

方法二:

#include
int main ()
{
	int num,d1,d2,d3,d4; // num 代表输入的数 ; d1,d2,d3,d4 分别代表千位、百位、十位、个位
	scanf("%d",&num);
	d4=num%10;
	d3=(num/10)%10;
	d2=(num/100)%10;
	d1=num/1000;
	printf("%d %d %d %d\n",d4,d3,d2,d1);
	return 0;	
 } 

方法三:

#include
int main ()
{
	int num,d1,d2,d3,d4; // num 代表输入的数  
	scanf("%d",&num);   // d1,d2,d3,d4 分别代表千位、百位、十位、个位 
    d1=num/1000;
    d2=(num-d1*1000)/100;
    d3=(num-d1*1000-d2*100)/10;
    d4=(num-d1*1000-d2*100-d3*10);
    printf("%d %d %d %d\n",d4,d3,d2,d1);
	return 0;	
 } 

如有不足,欢迎指正。

你可能感兴趣的:(#,新手上路,c语言,acm竞赛)