| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5268 人关注过本帖
标题:如何处理从键盘输入一个整数后,把此整数变成一个字符串
只看楼主 加入收藏
异ren
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-2-2
结帖率:50%
收藏
已结贴  问题点数:1 回复次数:14 
如何处理从键盘输入一个整数后,把此整数变成一个字符串
/******************************************************
要求:从键盘输入一个整数,判断该数是几位数,逆向输出该数
*******************************************************/
# include <iostream>
using namespace std;
int main()
{


char b[]="12";//我只会这样编写程序,可是要求说整数是从键盘输入的,要怎么改我这个程序才能达到题目的要求呢?
    int c=strlen(b);
        cout<<c<<endl;
        for(int i=0;i<=c;i++)
            cout<<b[c-i]<<endl;
        return 0;
}

搜索更多相关主题的帖子: 编写程序 include 字符串 键盘 如何 
2016-03-30 23:26
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
你就直接用整数输入就行,然后用库函数itoa转换成字符串,strlen可判断几位数,再将字符串逆序输出。

[此贴子已经被作者于2016-3-30 23:56编辑过]


   唯实惟新 至诚致志
2016-03-30 23:55
仰望星空的
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:50
专家分:248
注 册:2015-9-28
收藏
得分:0 
直接cin>>unity不行嘛?
2016-03-31 10:19
异ren
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-2-2
收藏
得分:0 
回复 3楼 仰望星空的
我没学过啊,看来在教科书学的东西还是很少,那要怎么改呢?
2016-03-31 22:42
异ren
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-2-2
收藏
得分:0 
回复 2楼 qq1023569223
我没学过啊,看来在教科书学的东西还是很少,那要怎么改呢?
2016-03-31 22:43
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:1 
程序代码:
//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;
}

   唯实惟新 至诚致志
2016-03-31 23:10
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:0 
/******************************************************
要求:从键盘输入一个整数,判断该数是几位数,逆向输出该数
*******************************************************/
# include <iostream>
#include <string>
using namespace std;
int main()
{
    string ch;
    cin >> ch;
    cout << ch.size() << endl;
    for (int i = ch.size() - 1 ; i >= 0 ; i--)
    {
        cout << ch[i];
    }
    return 0;
}
2016-03-31 23:41
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:0 
按题意要求,可不需要转换为字符串的。

能编个毛线衣吗?
2016-04-01 07:18
农民工
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:21
帖 子:109
专家分:639
注 册:2015-8-22
收藏
得分:0 
itoa 或者 sprintf
2016-04-01 13:02
异ren
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2016-2-2
收藏
得分:0 
回复 7楼 hjx1120
# include <iostream>
#include <string>
using namespace std;
int main()
{
    string ch;
    cin >> ch;
    cout << ch.size() << endl;
    for (int i = ch.size(); i >= 0 ; i--)//此处的ch.size ()-1中的减1去掉之后的运行结果都是一样的,例如输入的是12,那么在for循环之内,
        //第一个输出的是a[2],这样不就越界了吗,为什么还能编译
    {
        cout << ch[i];
    }
    return 0;
}
2016-04-01 13:40
快速回复:如何处理从键盘输入一个整数后,把此整数变成一个字符串
数据加载中...
 
   



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

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