当前位置: 代码迷 >> 综合 >> in2021_2th_第九届蓝桥杯大赛个人赛省赛(软件类)真题\LanqiaoCB\C语言B组\2_明码
  详细解决方案

in2021_2th_第九届蓝桥杯大赛个人赛省赛(软件类)真题\LanqiaoCB\C语言B组\2_明码

热度:69   发布时间:2024-01-21 19:53:08.0

标题:明码

由于审核时,大段题目 文字和其他文章题目内容 重复,导致审核不过,所以这里题目略:

 

AC代码:

#include <iostream>
#include <string.h>
#include <sstream>
#include <vector>
#include <cmath>using namespace std;string ItoS(int num){stringstream ss;ss<<num;return ss.str();
}string DecToBin(int dec){//十进制 转 二进制string bin="";if(dec<0){bin+="1";dec=-dec;}vector<int> tempBin;while(dec){int cur=dec%2;dec/=2;tempBin.push_back(cur);}int zeroNum=8-bin.size()-tempBin.size();for(int i=0;i<zeroNum;i++)bin+="0";for(int i=tempBin.size()-1;i>=0;i--)bin+=ItoS(tempBin[i]);return bin;
}int info[10][32];
string infoBin[10][32];void PrintInfoBin(string bin){for(int i=0;i<bin.size();i++){if(bin[i]=='0')cout<<" ";elsecout<<"#";}}int main()
{for(int i=0;i<10;i++)for(int j=0;j<32;j++){cin>>info[i][j];infoBin[i][j]=DecToBin(info[i][j]);}for(int i=0;i<10;i++){for(int j=0;j<32;j+=2){PrintInfoBin(infoBin[i][j]);PrintInfoBin(infoBin[i][j+1]);cout<<endl;}cout<<"--------------------------"<<endl;}//九的九次方等于多少?cout<<endl<<"九的九次方等于多少?"<<endl;long long nine=1;for(int i=1;i<=9;i++)nine*=9;cout<<nine<<endl;long long res=pow(9,9);cout<<res<<endl;return 0;
}