• 华科机考:奇偶校验


    时间限制:1秒   空间限制:32768K  

    题目描述

    输入一个字符串,然后对每个字符进行奇校验,最后输出校验后的二进制数(如'3’,输出:10110011)。

    输入描述: 输入包括一个字符串,字符串长度不超过100。

    输出描述: 可能有多组测试数据,对于每组数据, 对于字符串中的每一个字符,输出按题目进行奇偶校验后的数,每个字符校验的结果占一行。

    输入例子: 3 3a

    输出例子: 10110011

                  10110011

                  01100001

    思路:先将这个字符转换成int,然后化成二进制,高位不足就补0,最后一位看情况补0或是1

    代码:

    #include <iostream>
    #include <string.h>
    using namespace std;
    
    
    int main(){
       string str;
       int a[8];
       int num;
       int j,countl;
       while(cin>>str){
       for(int i=0;i<str.size();i++){
        memset(a,0,sizeof(a));
        j=0;
        countl=0;
        num=int(str[i]);
        while(num){
         a[j]=num%2;
         if(num%2==1)
          countl++;
         num=num/2;
         j++;
        }
        if(countl%2==0)
         a[7]=1;
        else
         a[7]=0;
        for(int j=7;j>=0;j--)
        cout<<a[j];
        cout<<endl;
       }
       }
       return 0;
    }
  • 相关阅读:
    CentOS7 Install Consul
    CentOS6 Install kafka
    CentOS7 Install Shipyard
    zabbix_sender
    python mail
    CentOS6.8 RPM包安装快速zabbix22
    python与shell通过微信企业号发送消息
    zabbix监控之grafana
    linux查看进程(java)启动时间
    (ubuntu)安装配置jenkins(新版)
  • 原文地址:https://www.cnblogs.com/mlgjb/p/6667659.html
Copyright © 2020-2023  润新知