| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2603 人关注过本帖
标题:给一个不多于 5 位的正整数,要求:1,求她是几位数; 2,分别输出每一位数字 ...
只看楼主 加入收藏
yw天使的旋律
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-9-7
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
给一个不多于 5 位的正整数,要求:1,求她是几位数; 2,分别输出每一位数字 3,按逆序输出各位数字,例如原数为 321,应输出 123.
#define M 100000
#include <stdio.h>
void main()
{
    long int i;
    int a,b,c,d,e,place;
    printf("请输入一个小于%d的正整数i:",M);
    scanf("%d",&i);
    while(i>M)
    {
        printf("不符合要求,请重新输入一个小于%d的正整数i:",M);
        scanf("%d",&i);
    }
    if(i>=10000)
        place=5;
    else if(i>=1000)
            place=4;
         else if(i>=100)
                place=3;
              else if(i>=10)
                    place=2;
                    else
                        place=1;
    printf("输入数的位数是:%d\n",place);
    printf("每位的数字为:");
    e=i/10000;
    d=(i-10000*e)/1000;
    c=(i-10000*e-1000*d)/100;
    b=(i-10000*e-1000*d-100*c)/10;
    a=(i-10000*e-1000*d-100*c-10*b)/1;
//    printf("%d%d%d%d%d",a,b,c,d,e);
    switch(place)
    {
        case 5:printf("%d %d %d %d %d",e,d,c,b,a);
                printf("\n反序数字为:");
                printf("%d %d %d %d %d",a,b,c,d,e);break;

        case 4:printf("%d %d %d %d",d,c,b,a);
                printf("\n反序数字为:");
                printf("%d %d %d %d",a,b,c,d);break;

        case 3:printf("%d %d %d",c,b,a);
                printf("\n反序数字为:");
                printf("%d %d %d",a,b,c);break;

        case 2:printf("%d %d",b,a);
                printf("\n反序数字为:");
                printf("%d %d",a,b);break;

        case 1:printf("%d",a);
                printf("\n反序数字为:");
                printf("%d",a);break;
        default:printf("enter data error!");
    }

}
搜索更多相关主题的帖子: include 正整数 
2014-09-11 19:13
魑魅魍魉!
Rank: 3Rank: 3
来 自:亲爱MM肚子里!
等 级:论坛游侠
威 望:1
帖 子:61
专家分:149
注 册:2014-5-3
收藏
得分:10 
这是嘛情况
2014-09-11 19:30
枫__________
Rank: 2
等 级:论坛游民
帖 子:11
专家分:29
注 册:2011-5-21
收藏
得分:10 
你要说什么

膜拜
2014-09-11 19:33
懵智
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-12-19
收藏
得分:0 
#include<stdio.h>
int main()
{
    long int num,a[5],i,j;
    printf("Please enter a number between 1 and 99999\n");
    scanf("%d",&num);
    for(;num>=100000||num<=0;)
    {
        printf("Data error! Please enter the number between 1 and 99999\n");
        scanf("%d",&num);
    }
    for(i=0;i<5&&num>0;i++)
    {
        a[i]=num%10;
        num=num/10;
    }
    printf("输入number的位数为:%ld\n",i);
    printf("分别输出每一位数:");
    for(j=i-1;j>=0;j--)
    {
        printf("%ld ",a[j]);
    }
    printf("\n");
    printf("逆序输出每一位数:");
    for(j=0;j<i;j++)
    {
        printf("%ld ",a[j]);
    }
    printf("\n");
    return 0;
}
2016-12-19 11:31
快速回复:给一个不多于 5 位的正整数,要求:1,求她是几位数; 2,分别输出每一 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013806 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved