xiaoji_owo 2018-10-13 06:31 采纳率: 0%
浏览 1050

[初学c++]我的代码哪有问题。。。

题目
3-5难度系数1 输出整数各位数字 (5 分)
本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。

输入格式:
输入在一行中给出一个长整型范围内的非负整数。

输出格式:
从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。

输入样例:
123456
输出样例:
1 2 3 4 5 6

写了两种
(一)

 #include <iostream>
using namespace std;
int leng(long a);
int main()
{
    long x; cin >> x; int i = leng(x),z=leng(x);
    int * num = new int[i]; if (x == 0)cout << "0 ";
    while (x != 0) {

         num[i]=x%10;i--;
        x /= 10;
    } for (int y = 1; y <= z; y++)
    {
        cout << num[y] << " ";
    }
    return 0;
}
int leng(long a) {
    using namespace std;
    int leng = 0;
    while (a > 0) {
        a /= 10;
        leng++;
    }
        return leng;
    }

测试点 提示 结果 耗时 内存

0 sample等价 运行时错误 3 ms 384KB

1 只有1位 答案正确 2 ms 420KB

2 零 答案正确 2 ms 404KB

(二)

 #include <iostream>
using namespace std;
int main()
{
    long n,x;
    int  num, temp;
    cin>>n;
        x = n;
        int k = 1;
        temp = 0;
        while (x!=0)
        {
            temp++;
            k *= 10;
            x /= 10;
        }
        x = n;
        if (n == 0)cout << "0 ";
        while (temp!=0)
        {   k /= 10;
            num = x / k;
            x %= k;
            cout << num<<" ";
            temp--;
        }
        return 0;

}

测试点 提示 结果 耗时 内存

0 sample等价 浮点错误 2 ms 512KB

1 只有1位 答案正确 2 ms 496KB

2 零 答案正确 2 ms 384KB

  • 写回答

2条回答 默认 最新

  • threenewbee 2018-10-13 08:37
    关注

    注意,是长整数范围,你输入6666666666
    第一个程序没有输出
    第二个程序输出-8 -5 -8 -9 -9 -3 -4 -6 0

    你可以这么写:

    #include <iostream>
    using namespace std;
    
    int main()
    {
        long x; cin >> x;   
        char temp[100];
        ltoa(x, temp, 10);
        for (int i = 0; i < strlen(temp); i++)
            cout << temp[i] << " ";
        return 0;
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥30 STM32 INMP441无法读取数据
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境