❶ 输入5位以内的任何数字,分离每一位的值,并输出各位的和的c语言代码
int s=x;int sum;int a[5];//s里放的是任意5位数字,sum算各位的和,数组放每一位数;
a[0]=s%10;//除10取余,得个位数;
s=s/10;
a[1]=s%10;//百位
s=s/10;
a[2]=s%10;//千位
.....//做一个循环最好是,,大概这么个思路,最后把数组里的数加起来
for(int i=0;i<5;i++)
{sum=sum+a[i];//所有位的和
}
//自己现编的,,,大概这样,,,
❷ C语言编程:对于输入的一个五位数,求出其每位上的数字,并输出,每两位之间用空格隔开。
main( )
{
long a, b, c, d, e, x;
scanf("%ld", &x);
a = x / 10000; /* 分解出万位 */
b = x % 10000 / 1000; /* 分解出千位 */
c = x % 1000 / 100; /* 分解出百位 */
d = x % 100 / 10; /* 分解出十位 */
e = x % 10; /* 分解出个位 */
if (a!=0) printf("there are 5, %ld %ld %ld %ld %ld\n", e, d, c, b, a);
else if (b!=0) printf("there are 4, %ld %ld %ld %ld\n", e, d, c, b);
else if (c!=0) printf(" there are 3, %ld %ld %ld\n", e, d, c);
else if (d!=0) printf("there are 2, %ld %ld\n", e, d);
else if (e!=0) printf(" there are 1, %ld\n", e);
}
❸ c语言如何拆分数字
1、直接以字符串的形式读入数据,然后以字符数组的形式挨个拆分每位数字即可。
2、例程:
#include<stdio.h>
#include<string.h>
intmain()
{
chara[30];
inti,l;
printf("请输入一整型数字:");
gets(a);
printf("数字拆分如下: ");
l=strlen(a);
for(i=0;i<l;i++)
printf("%d",a[i]-'0');//将数字字符转为数字值
printf(" ");
}
❹ c语言 怎么把五位数数分离
呃…我来了,最简单的方法这样吧:
#include
<stdio.h>
#include
<stdlib.h>
int
main()
{
int
num[5];
int
a,b,c,d,e;
printf("输入一个五位数:");
scanf("%d",num);
a=num[0];
b=num[1];
c=num[2];
c=num[3];
d=num[4];
e=num[5];
printf("各个位上的数分别是:%d\n%d\n%d\n%d\n%d\n",a,b,c,d,e);
return
0;
}
因为才五位,所以非常方便,循环都可以不用!
❺ c语言编写程序输入5位以内任何数字,分离每一位数值,并输出各位的和的代码
#include <stdio.h>
int main() {
int n;
int sum=0;
printf(“请输入任意一个1-99999的数字:");
scanf("%d", &n);
while (n!=0) {
printf("%d ", n%10);
sum+= n%10;
n/=10;
}
printf("\n各位数字之和:%d\n", sum);
return 0;
}
❻ C语言程序设计 编制程序将一个5位数分解为5个1位数。
如果是初学者,看第一个代码,否则,看第二个。
#include "stdio.h"
main()
{
int n,a,b,c,d,e;
printf("请输入任意五位数:\n");
scanf("%d",&n);
a=n/10000;
b=n/1000%10;
c=n/100%10;
d=n/10%10;
e=n%10;
printf("%d %d %d %d %d\n",a,b,c,d,e);
}
不仅能输入五位数,还可以输入多位数!
#include "stdio.h"
#define N 10
main()
{
int n,i,a[N],k=0;
printf("请输入任意数:\n");
scanf("%d",&n);
for(i=n;i>0;i/=10)
{
a[k++]=i%10;
}
for(i=k-1;i>=0;i--)
printf("%d ",a[i]);
printf("\n");
}
记得采纳最佳答案,谢谢!
❼ c语言问题,将一个五位数分解成五个数字,为什么下面的语句不对呢
这种思路不太好,
n[0]=number/10000;
n[1]=(number%10000)/1000;
n[2]=(number%1000)/100;
n[3]=(number%100)/10;
n[4]=number%10;
%是取余数,/是取商。
你的也可以的,只不过在n[3]=.....一行中 n[3]*100应该改为n[2]*100,结果也是正确的
❽ 编写一个c程序,从键盘输入任意一个五位数,把这个数值分解为单个数字,然后打印出每个数字并且每个数字
你好!!
#include<stdio.h>
intmain()
{
longintx;
inti=0;
intii=0;
intshu[20]={0};
scanf("%ld",&x);
for(;;)
{
shu[i]=x%10;
x=x/10;
i++;
if(x<10)
{
shu[i]=x;
break;
}
}
for(;i>=0;i--)
printf("%d",shu[i]);
}
❾ 如何用C语言实现输入1个5位以内的正整数 分别输出每位数
方法1:
main( )
{
long a,b,c,d,e,x;
scanf("%ld",&x);
a=x/10000;/*分解出万位*/
b=x%10000/1000;/*分解出千位*/
c=x%1000/100;/*分解出百位*/
d=x%100/10;/*分解出十位*/
e=x%10;/*分解出个位*/
if (a!=0) printf("there are 5, %ld %ld %ld %ld %ld ",e,d,c,b,a);
else if (b!=0) printf("there are 4, %ld %ld %ld %ld ",e,d,c,b);
else if (c!=0) printf(" there are 3,%ld %ld %ld ",e,d,c);
else if (d!=0) printf("there are 2, %ld %ld ",e,d);
else if (e!=0) printf(" there are 1,%ld ",e);
}
方法2:
main()
{
int a,b,i,j,n=1,t,s[6];
scanf("%d",&a);
b=a;
while(b/10>0)
{
n++;
b=b/10;
}
for(i=n;i>=1;i--)
{
t=1;
for(j=1;j<n;j++)
{t=t*10;}
s[i]=a/t;
}
for(i=1;i<=n-1;i++)
s[i]=s[i]-s[i-1]*10;
printf("%d",s[i]);
}
欢迎经常探讨此类问题!
❿ 如何用C语言编出 读入一个五位数,分割该数各位上的数并将分割的数字以间隔三
#include<stdio.h>
voidfun(intnum)//递归方法
{
if(num/10==0)
{
printf("%-4d",num%10);
return;
}
fun(num/10);
printf("%-4d",num%10);
return;
}
intmain()
{
printf("输入5位数: ");
intn;
scanf("%d",&n);//没有做输入检查
fun(n);
return0;
}