描述:crc检测题目,还好最近刚学了,要不然还真不会 #include <cstdio> #include <cstring> char str[1100]; char t[]= {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; int main() { // freopen("a.txt","r",stdin); int len; long long sum,g=34943; while(gets(str)) { len=strlen(str); if(len==1&&str[0]=='#') break; sum=0; for(int i=0; i<len; i++) sum=(sum*256+str[i])%g; sum=sum*256*256%g; sum=g-sum; if(sum==g) printf("00 00\n"); else { int arr[4]; for(int i=3; i>=0; i--) { arr[i]=sum%16; sum/=16; } printf("%c%c %c%c\n",t[arr[0]],t[arr[1]],t[arr[2]],t[arr[3]]); } } return 0; }