题目:打印九九乘法表,要求只用一个变量
解法:
/*将一个变量分为两部分,高四位与低四位。则相当于两个变量的效果,再利用双重循环即可*/
#include<stdio.h>
#include<stdlib.h>
int main(){
int a;
for (a = 0x10 ; a <= 0x90 ; a += 0x10 ) {
for(a += (a>>4) ; (a&0x0f) <= 0x09 ; a++) {
printf("%d*%d=%d\t ", a>>4, a&0xf, (a>>4)*(a&0xf));
}
printf("\n");
a &= 0xf0;
}
return 0;
}
参考: http://bbs.csdn.net/topics/390608383