| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5296 人关注过本帖
标题:如何处理从键盘输入一个整数后,把此整数变成一个字符串
只看楼主 加入收藏
异ren
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-2-2
收藏
得分:0 
回复 6楼 qq1023569223
//C++我不熟悉,C语言的你看看,一样的
#include <stdio.h>

int main()
{
    int num=0,len=0,i=0;
    int a[10]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};  //用来保存数字的各位数,从个位开始到高位

    scanf("%d",&num);  //因int的限制,至多请输入9位数,更多可自己改成long long

    for(;num!=0;i++)  //求数字的各位数和长度
    {
        a[i]=num%10;  //取最低位数字
        num/=10;      //去掉最低位,如想不明白,请在纸上比划
        len++;        //长度自增
    }
    //输出
    printf("result:%d\t",len);

    for(i=0;a[i]!=-1;i++)
    {
        printf("%d",a[i]);
    }
    printf("\n");

    return 0;
}
这个我看得懂,但是你这个程序的话就只适合于正整数,负整数和零都是是不适合的啊,还有我把你的程序稍稍改了一下,C++的格式
include <iostream>
using namespace std;
int main()
{
    int num=0,len=0;
    int a[10];   

   cin>>num;
    for(int i=0;num!=0;i++)  //求数字的各位数和长度
    {
       a[i]=num%10; //取最低位数字
        num/=10;      //去掉最低位,如想不明白,请在纸上比划
        len++;        //长度自增
    }
    cout<<len<<endl;
 for(i=0;i<len;i++)
    {
        cout<<a[i];
    }
   return 0;
}
不过都是不适合负整数和零
2016-04-01 15:45
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:0 
字符串是从0开始的
例:
字符串: 567
字符   567\0
数字   0123
size()函数计算的结果是3  
\0这个字符不可见
反着输出就是
\0765
减1不输出'\0'这个符号
765
其实输出的是字符不是字符串



2016-04-01 19:07
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
回复 11楼 异ren
用if判断,0的话直接输出,负数的话先按正数输出,末尾加个-不就好了。

   唯实惟新 至诚致志
2016-04-01 20:30
异ren
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-2-2
收藏
得分:0 
回复 13楼 qq1023569223
对,我也是这样想的
2016-04-01 23:02
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:0 
回复 10楼 异ren
也许是编译器没访问到下标为2的元素就没有输出,才会得到与预期一样的效果。当然访问未赋值变量,被输出随机数的情况也很常见,一般是不报错的。但访问未指向确值的指针多半要报错。
2016-04-02 16:25
快速回复:如何处理从键盘输入一个整数后,把此整数变成一个字符串
数据加载中...
 
   



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

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