实验4-2-8 输出整数各位数字 (15分)

Posted wven

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验4-2-8 输出整数各位数字 (15分)相关的知识,希望对你有一定的参考价值。

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

输入格式:

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

输出格式:

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

输入样例:

123456

输出样例:

1 2 3 4 5 6 

 //很死板的写法

#include<stdio.h>
#include<math.h>
int main()
{
int fact(int x);
int n,i,t;
int shu=0,count=0,num=0;
scanf("%d",&n);
if(n==0)
{
printf("0 ");
}
else if(n>0)
{

count=fact(n);
// printf("count=%d ",count);
shu=count;
int str[shu];
while(n>0)
{

// printf("%d ",t);
for(i=0;i<shu;i++)
{
t=n%10;
// printf("t=%d ",t);
str[i]=t;
// printf("str=%d ",str[i]);
n=n/10;
// printf("n=%d ",n);
}
}
for(i=shu-1;i>=0;i--)
{
printf("%d ",str[i]);
}

}

return 0;
}
int fact(int x)
{
int count=0;
while(x>0)
{
count++;
x=x/10;
}
return count;
}

 

 

//新学一位大佬的,卧槽,牛逼,呜呜呜呜,我好笨

#include<stdio.h>
int main()
{
char a[100];
int i;
gets(a);
while(a[i])
{
printf("%c ",a[i]);
i++;
}

return 0;
}

//

#include<stdio.h>
#include<math.h>
int main(){
int n,m;
int count=0,i;
scanf("%d",&n);
m=shu;
if(n==0) printf("0 ");
else{
while(m){
m/=10;
count++;
}
for(i=count;i>0;i--){
printf("%d ",shu/(int)pow(10,i-1));
shu%=(int)pow(10,i-1);
}
}
return 0;
}

 

以上是关于实验4-2-8 输出整数各位数字 (15分)的主要内容,如果未能解决你的问题,请参考以下文章

实验4-1-2 求奇数和 (15分)

PTA 7-14 逆序输出数的各位数字 (10分)

[PTA]实验2-1-7 整数152的各位数字

PTA 7-7 求整数的位数及各位数字之和 (15分)

[PTA]实验4-1-4 求整数的位数及各位数字之和

c语言从键盘上输入一个4位整数,输出其个位、十位、百位、千位上的数字,并求和。(代码15分,调试1