用C语言编写一个程序。要求读入一个整数,然后确定并打印出它是奇数还是偶数。并分解它的每位数字。

以间隔3个空格的形式输出出来。提示:使用整数除法和求模运算... 以间隔3个空格的形式输出出来。提示:使用整数除法和求模运算 展开
 我来答
zhanghan4310
2011-10-23 · TA获得超过629个赞
知道小有建树答主
回答量:452
采纳率:0%
帮助的人:358万
展开全部
这个是数字分解()的,至于具体的格式你到printf里面调整一下就行了。辨别是否奇数偶数就更简单了 用这个数字%2,如果余数为1则是奇数,否则为偶数。
代码在此:
#include "stdio.h"

void NumberAbstract(long iNumber);

int main(int argc, char* argv[])
{
long i;
printf("输入一个小于10位数的整数:\n");
scanf("%d",&i);
NumberAbstract(i);
return 0;
}

void NumberAbstract(long iNumber)
{
if(iNumber>9999999999)
{
printf("数字超过10位数\n");
return;
}
int a = iNumber/1000000000;
int b = iNumber/100000000%10;
int c = iNumber/10000000%10;
int d = iNumber/1000000%10;
int e = iNumber/100000%10;
int f = iNumber/10000%10;
int g = iNumber/1000%10;
int h = iNumber/100%10; //取得百位
int i = iNumber/10%10; //取得十位
int j = iNumber%10; //取得个位

printf("十亿位 %d\n",a);
printf("亿位 %d\n",b);
printf("千万位 %d\n",c);
printf("百万位 %d\n",d);
printf("十万位 %d\n",e);
printf("万位 %d\n",f);
printf("千位 %d\n",g);
printf("百位 %d\n",h);
printf("十位 %d\n",i);
printf("个位 %d\n",j);

printf("\n");

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
段启中
2011-10-23 · TA获得超过261个赞
知道小有建树答主
回答量:279
采纳率:100%
帮助的人:171万
展开全部
#include"stdio.h"
void main()
{
int i,j,k,n,a[25];
printf("请输入一个数:\n");
scanf("%d",&k);
if(k/2==(float)k/2)
printf("是偶数\n");
else
printf("是奇数\n");
if(k>9)
for(i=1,j=0;;j++,i=i*10)
{
n=k/i;
a[j]=n%10;
if(n==0)
break;
}
else
printf("%d\t",k);
for(i=j-1;i>=0;i--)
printf("%d\t",a[i]);
}
我试过了,你可以试试。可以实现
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式