1047:字符串的奇偶性分数: 10
标签
题目描述
我们把只有0和1组成的字符串叫做比特字符串。如果比特字符串中1的个数为奇数,则称这个比特字符串是奇性的。如果比特字符串中1的个数为偶数,则称这个比特字符串是偶性的。
注意:
(1)0是偶数,所以不包含1的比特字符串是偶性的。
(2)0的个数不影响比特字符串的奇偶性。
输入格式
输入包含多组测试数据。每组数据由1~31个0、1组成,最后跟一个小写字母e或o,e表示此比特字符串应为偶性,o表示此比特字符串应为奇性。
当输入#时,表示输入结束。
输出
每组输入对应一个输出,你应该将最后的字母替换成0或1,使得此比特字符串符合输入时确定的奇偶性。
样例输入
101e
010010o
1e
000e
110100101o
#
样例输出
1010
0100101
11
0000
1101001010
提示[+]
*** 提示已隐藏,点击上方 [+] 可显示 ***
#include<stdio.h>
int main(){
char num[100];
int l;
int i,sum=0;
while(1){
gets(num);
l=strlen(num);
if(num[0]=='#')
break;
else{
for(i=0;i<l-1;i++){
if(num[i]=='1')//注意这里是字符串,不能把‘1’写成1!!
sum++;
}
if(num[l-1]=='e'){
if(sum%2==1)
num[l-1]='1';
else
num[l-1]='0';
}
else{
if(sum%2==1)
num[l-1]='0';
else
num[l-1]='1';
}
}
puts(num);
sum=0;
}
}