解题思路:把输入的数字分解存放在数组中;
注意事项:
参考代码:
#include <stdio.h>
#include <string.h>
void shuzi(int*w,int n,int a[]);
void print(int a[]);
int main() {
int w,n,a[5];
for(int i=0;i<5;i++)
a[i]=-1;
scanf("%d",&n);
shuzi(&w,n,a);
printf("%d\n",w);
print(a);
}
void shuzi(int*w,int n,int a[5])
{
if(1<=n&&n<10) {
a[0]=n;
*w=1;
}
if(10<=n&&n<100) {
a[0]=n/10;
a[1]=n%10;
*w=2;
}
if(100<=n&&n<1000) {
a[0]=n/100;
a[1]=n/10%10;
a[2]=n%100%10;
*w=3;
}
if(1000<=n&&n<10000) {
a[0]=n/1000;
a[1]=n%1000/100;
a[2]=n%1000%100/10;
a[3]=n%1000%100%10;
*w=4;
}
if(10000<=n&&n<100000) {
a[0]=n/10000;
a[1]=n%10000/1000;
a[2]=n%10000%1000/100;
a[3]=n%10000%1000%100/10;
a[4]=n%10000%1000%100%10;
*w=5;
}
}
void print(int a[5])
{
int i=0;
for(i=0; i<5; i++) {
if(a[i]!=-1)
printf("%d ",a[i]);
}
printf("\n");
for(i=4; i>=0; i--) {
if(a[i]!=-1)
printf("%d",a[i]);
}
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:481 |
字符串的输入输出处理 (C语言代码)浏览:1019 |
printf基础练习2 (C语言代码)浏览:826 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:485 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:723 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:631 |
三角形 (C++代码)递推浏览:825 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:943 |
DNA (C语言代码)浏览:440 |
Hello, world! (C语言代码)浏览:916 |