顺序按位输出整数的两种巧妙方法( 7-22 输出整数各位数字 )


本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。

输入格式:

输入在一行中给出一个长整型范围内的非负整数。

输出格式:

从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。

输入样例:

123456

输出样例:

1 2 3 4 5 6

解1(顺序时直接字符串)

#include <stdio.h>
int main(void) {

    char temp;
    temp = getchar();
    while (temp >= '0'&&temp <= '9') {
        printf("%c ", temp);
        temp = getchar();
    }
    printf("\n");

    return 0;
}

解2(用int,逆序也方便)

#include<stdio.h>
int main()
{
	int num=0,t=0,mask=1;
	scanf("%d",&num);
	t=num;
	while(t>9){
		t/=10;
		mask*=10;
	}
	while(mask>0){
	 	printf("%d ",num/mask);
		num%=mask;
		mask/=10;
	} 
    return 0;
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM