请编写c语言程序完成下列问题:样例输入a150b65样例输出102111101提示 要求使用位运算完成上述转换操作
#include <stdio.h>
int main() {
char s[] = "a150b65";
int num = 0;
int i = 0;
while (s[i] != '\0') {
if (s[i] >= '0' && s[i] <= '9') {
num = num * 10 + s[i] - '0';
} else {
printf("%d.", num);
num = 0;
}
i++;
}
printf("%d\n", num);
int a = num / (1 << 24);
int b = (num % (1 << 24)) / (1 << 16);
int c = (num % (1 << 16)) / (1 << 8);
int d = num % (1 << 8);
printf("%d.%d.%d.%d\n", a, b, c, d);
return 0;
}
``
原文地址: https://www.cveoy.top/t/topic/fiOv 著作权归作者所有。请勿转载和采集!