| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 989 人关注过本帖
标题:有一个题目不会写。请大神指点
只看楼主 加入收藏
以梦為马
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2016-11-9
结帖率:0
收藏
已结贴  问题点数:10 回复次数:4 
有一个题目不会写。请大神指点
给一个不多于5位的正整数,要求①求出它是几位数②分别打印出每一位数字③按逆序打印出各位数字。
搜索更多相关主题的帖子: 正整数 
2016-11-17 09:53
NiuYoohoo
Rank: 4
等 级:业余侠客
威 望:2
帖 子:65
专家分:216
注 册:2016-10-8
收藏
得分:3 
#include <stdio.h>
#include <math.h>

int main()
{
    unsigned int n=0;
    unsigned int res=0;
    printf("Input n:");
    scanf("%d",&n);
    int bit =(int)log10(n)+1;
    printf("%d是%d位\n",n,bit);
    printf("nom:%d\n",n);
    printf("rot:");
    for(int i=1;i<=bit;i++)
    {
        printf("%d",n%10);
        res=n%10+res*10;
        n=n/10;
    }
    printf("\n");
return 0;
}
收到的鲜花
  • 天丛云2016-11-17 17:46 送鲜花  3朵   附言:我很赞同
2016-11-17 12:43
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:3 
什么都不会么, 这种问题论坛搜索中有很多,直接给答案有用么?

早知做人那么辛苦!  当初不应该下凡
2016-11-17 12:56
天丛云
Rank: 2
等 级:论坛游民
帖 子:48
专家分:50
注 册:2016-11-8
收藏
得分:3 
程序代码:
#include<stdio.h>
main()
{    
    int a,b[5],c;
    printf("输入的数为:");
    scanf("%d",&a);
    if(a>10000)
    {
        b[0]=a%10;
        b[1]=(a-(a%10))%100;
        b[2]=(a-((a-(a%10))%100))%1000;
        b[3]=(a-((a-((a-(a%10))%100))%1000))%10000;
        b[4]=(a-((a-((a-((a-(a%10))%100))%1000))%10000))%100000;
        printf("%d %d %d %d %d",b[0],b[1],b[2],b[3],b[4]);
    }
    if((a<10000)&&(a>100))
    {
        b[0]=a%10;
        b[1]=(a-(a%10))%100;
        b[2]=(a-((a-(a%10))%100))%1000; 
        b[3]=(a-((a-((a-(a%10))%100))%1000))%10000;
        printf("%d %d %d %d",b[0],b[1],b[2],b[3]);
    }
    if((a<1000)&&(a>10))
    {
        b[0]=a%10;
        b[1]=(a-(a%10))%100; 
        b[2]=(a-((a-(a%10))%100))%1000;
        printf("%d %d %d",b[0],b[1],b[2]);
    }
    if((a<100)&&(a>0))
    {
       b[0]=a%10;
       b[1]=(a-(a%10))%100; 
       printf("%d %d",b[0],b[1]);
    }
    else
        printf(" %d",a)
        
}

这个好像很笨,大神会有更好的方法。
2016-11-17 13:06
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:3 
简单的可以这样做~

#include<stdio.h>
#include<string.h>
int main()
{
    char a[6];
    int i=0;
    while(((a[i++]=putchar(getchar()))!='\n')?printf(" "):(a[i]='\0'));
    while (i--?printf("%c ",a[i-1]):0);
    printf("\n这是%d位数\n",strlen(a)-1);
    return 0;
}

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-17 22:23
快速回复:有一个题目不会写。请大神指点
数据加载中...
 
   



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

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