-
题目描述:
-
输入一个字符串,然后对每个字符进行奇校验,最后输出校验后的二进制数(如'3’,输出:10110011)。
-
输入:
-
输入包括一个字符串,字符串长度不超过100。
-
输出:
-
可能有多组测试数据,对于每组数据,
对于字符串中的每一个字符,输出按题目进行奇偶校验后的数,每个字符校验的结果占一行。
-
样例输入:
-
3 3a
-
样例输出:
-
10110011 10110011 01100001
-
来源:
-
2010年华中科技大学计算机研究生机试真题
#include<stdio.h> #include<string.h> int main(){ char str[110]; while(scanf("%s",str)!=EOF){ for(int i=0;str[i];i++){ int num[8]; int j=0; memset(num,0,sizeof(num)); while(str[i]){ num[j++]=str[i]%2; str[i]=str[i]/2; } num[7]=num[6]^num[5]^num[4]^num[3]^num[2]^num[1]^num[0]^1; for(j=7;j>=0;j--) if(j==0) printf("%d\n",num[j]); else printf("%d",num[j]); } } return 0; }