您的位置:首页 > 其它

由《打印九九乘法表,要求只能用一个变量》想到的

2013-11-19 04:57 357 查看
一个两位数i,十位数是i/10,个位数是i%10;如56,56/10=5,56%10=6;

所有的两数(从11到99)分解后按顺序排出来的算式就是

int i;

for (i = 11; i <=99; i++)

{

printf("%d×%d=%2d  ", i % 10 , i / 10, (i / 10) * (i % 10));

}


这样有点乱,我们让他每到10换一行

if (i % 10 == 0)

{

printf("\n");

}


这样是大九九,小九九再加个判断

if((i % 10)<=(i / 10))


还要排除整10中有0的算式

if( i % 10 != 0)


完整的算法是



int i;

for (i = 11; i <=99; i++)

{

if((i % 10)<=(i / 10)&&( i % 10 != 0))

{

printf("%d×%d=%2d ", i % 10 , i / 10, (i / 10) * (i % 10));

}if (i % 10 == 0) { printf("\n"); }}



这是10进制的思想,其实任何进制都有算法,只是方法有点差别,

我们的思维可以发散一点,如果程序要更多的变量,我们是不是也能用一个变量代替呢,答案是肯定的,要100个变量,我们就分成100段,而且也不限于几个数字,字符等类型也能搞定,这只是一种思路,没有实用性,同学们不要真的这样做,

【注】论坛的回复超了,只好写进博客,希望原楼主能够看到
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐