C语言实验——分割整数

题目描述

从键盘输入一个长整数(不超过10位),从高位开始逐位分割并输出。

输入

正整数n,不含前导零。

输出

分割的整数序列,各整数之间用空格格开。

注意,最后一个数字后面没有空格!

示例输入

654321

示例输出

6 5 4 3 2 1

//源码:
#include <stdio.h>
#include <string.h>
void get_num(int n);
int main()
{
char a[10];
scanf("%s",a);
for(int i=0; i<strlen(a); i++)
{
if( i != strlen(a)-1 )
printf("%c ",a[i]);
else
printf("%c",a[i]);
}
return 0;
}

因为该题目有要求:

最后一个数字后面没有空格!

否则可以用下列递归:

#include <stdio.h>
void get_num(int n);
int main()
{
int n;
scanf("%d",&n);
get_num(n);
return 0;
}
void get_num(int n)
{
if(n / 10 == 0)
printf("%d ",n);
else
{
get_num(n/10);
printf("%d ",n % 10);
}
}


posted on 2012-10-09 10:11  Still_Raining  阅读(1209)  评论(0编辑  收藏  举报