参考代码:
//注意事项 //1.首位只是符号位,0表示正数,1表示负数,不表示该数的二进制位 //2.正数的原码、反码、补码都是他本身 //3.负数转反码时,符号位不变,其余各位取反;补码=反码+1 #include<bits/stdc++.h> using namespace std; int main() { string s; cin>>s; if(s[0]=='1')//负数 { for(int i=1;i<(int)s.length();i++) { if(s[i]=='0') s[i]='1'; else if(s[i]=='1') s[i]='0'; } if(s[(int)s.length()-1]=='0') s[(int)s.length()-1]='1'; else if(s[(int)s.length()-1]=='1') { for(int i=(int)s.length()-1;i>0;i--) { if(s[i]=='1') s[i]='0'; else if(s[i]=='0') { s[i]='1'; break; } } } cout<<s<<endl; } else//正数 { cout<<s<<endl; } return 0; }
0.0分
0 人评分
【出圈】 (C语言代码)用单项循环链表浏览:841 |
简洁的代码浏览:1474 |
C语言训练-委派任务* (C语言代码)..................竟然是第一个浏览:2212 |
小九九 (C语言代码)浏览:884 |
程序员的表白 (C语言代码)浏览:1575 |
简单的a+b (C语言代码)浏览:594 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:573 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:552 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:956 |
WU-输出九九乘法表 (C++代码)浏览:1852 |