您好,这样:int add(int a, int b){ int s, c; s = a ^ b; c = a & b; while (c) { c <<= 1; a = s; b = c; s = a ^ b; c = a & b; } return s;} int main(int argc, char *argv[]){ unsigned int seed; int n; int i; seed = time(NULL); srand(seed); for (i = 0; i < 100; i++) { n = rand(); printf("%11d * 9 = %11d:%11d\n", n, add(n, n << 3), n * 9); } return 0;}