| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1696 人关注过本帖
标题:怎么输完善呀
只看楼主 加入收藏
冬青123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-4-15
结帖率:90.91%
收藏
 问题点数:0 回复次数:4 
怎么输完善呀
从键盘输入一个正整数(不超过十位),要求编程实现以下功能:

① 求出这个数是几位数,并输出其位数;

② 输出这个数的逆序数。

(请思考:如果输入的数据#include<stdio.h>
int main()
{
    int  n,m = 0,v;
    scanf("%d",&n);
    for(  v=n; v; v/=10 )
        m = m*10 + v%10;
    printf( "%d\n", m );
}末尾若干个零的情况,其逆序数是否需要特殊处理,需怎样处理?)(难度级别—中等)

[此贴子已经被作者于2019-4-16 15:30编辑过]

搜索更多相关主题的帖子: 个数 位数 输出 序数 int 
2019-04-16 14:13
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
怎么输出逆序数
printf 输出,一个putchar当然也行,你想怎样就怎样

程序代码:
    const unsigned long long n = 1230045600;

    unsigned long long m = 0;
    for( unsigned long long v=n; v; v/=10 )
        m = m*10 + v%10;
    printf( "%llu\n", m );

2019-04-16 14:31
C基础
Rank: 6Rank: 6
等 级:侠之大者
威 望:6
帖 子:133
专家分:421
注 册:2018-10-15
收藏
得分:0 
把变量v改成double类型,在取余的时候用int强制转换,然后把条件表达式改成:0<v<1,不知道对不对,手机回复的,没运行,要不你试下
2019-04-16 16:56
Mr_doge
Rank: 5Rank: 5
等 级:贵宾
威 望:10
帖 子:159
专家分:385
注 册:2018-6-28
收藏
得分:0 
来个逃课办法吧,新建个数组,直接读取字符串,strlen(),输出,然后倒序putchar,解决
如果要求输入类型规定读取为数值而不能读取字符串,那就itoa()解决
不想逃课那就老实手动实现一遍itoa(),但是基于c语言环境,getchar() putchar()字符串逃课才是最理论正确的
2019-04-17 03:51
C基础
Rank: 6Rank: 6
等 级:侠之大者
威 望:6
帖 子:133
专家分:421
注 册:2018-10-15
收藏
得分:0 
我刚才试了一下   基于DEVC++编译器,如果只考虑逆序的话,你的这个程序是适合末尾有若干个零的情况的   
100000
1

--------------------------------
Process exited with return value 0
Press any key to continue . . .


输入一千,返回1
2019-04-17 13:12
快速回复:怎么输完善呀
数据加载中...
 
   



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

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