【基础练习】改数字

小乐乐改数字

http://www.nowcoder.com/questionTerminal/fcd30aac9c4f4028b23919a0c649824d

题目描述

小乐乐喜欢数字,尤其喜欢0和1。他现在得到了一个数,想把每位的数变成0或1。
如果某一位是奇数,就把它变成1,如果是偶数,那么就把它变成0。请你回答他最后得到的数是多少。

请在这里输入引用内容

输入描述:

输入包含一个整数n (0 ≤ n ≤ 109)

请在这里输入引用内容

输出描述:

输出一个整数,即小乐乐修改后得到的数字。

解题思路
将输入读取为字符串,判断如果是偶数则为0,奇数为1,最后输出,但是要判断第一个1出现的位置。

代码
#include<iostream>
#include<string>

using namespace std;

int main()
{
    char c[10] = {};//将数字读为字符char
    cin >> c;
    int n = strlen(c);//长度
    for (int i = 0; i < n; i++)
    {
        if (c[i] % 2 == 0)//偶数为0
            c[i] = '0';
        else 
            c[i] = '1';奇数为1
    }
    int f = 0;            //做标记,找出第一个1的位置
    for (int i = 0; i < n; i++)
    {
        if (c[i] != '0')
            ++f;//不等于0就继续向前
        if (f == 0)
            continue ;
        cout << c[i];
    }
    
    if (f == 0)            //输出一个零,或者非零后的所有数字
        cout << '0' << endl;

    cout << endl;
}


全部评论

相关推荐

不愿透露姓名的神秘牛友
07-03 18:22
投了几百份简历,专业和方向完全对口,都已读不回。尝试改了一下学校,果然有奇效。
steelhead:这不是很正常嘛,BOSS好的是即便是你学院本可能都会和聊几句,牛客上学院本机会很少了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务