A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 新手小渣渣 于 2015-4-11 11:59 编辑

//有四个数字1、2、3、4,能组成多少个互不相同且无重复数字的3位数?并打印出这些三位数。
#include<stdio.h>
int main ()
{
int i,j,k,t=0
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;K++)
if((i!=k)&&(i!=j)&&(j!=k))
{
t++;
if(t%10==0)                      这句开始红色的代码是什么意思啊看不懂了!!!!
printf("%d%d%d\n",i,j,k);    //这句话不是说t取摸之后等于0的表达式值为真才会运行这句话吗?可是if(t%10==0) 总是假的啊!!!这句还有意义吗?
else
printf("%d%d%d",i,j,k);
}
printf("t=%d\n" ,t)
}

12 个回复

倒序浏览
#include<stdio.h>
int main ()
{
int i,j,k,t=0;    //楼主少了分号
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;k++)      //楼主k大写了
{
if((i!=k)&&(i!=j)&&(j!=k))
{
printf("%d%d%d\n",i,j,k);   
}
}
}
回复 使用道具 举报
有木有懂的....
回复 使用道具 举报
VC++  运行结果
红色部分也觉得没必要

QQ截图20150403095203.png (5.26 KB, 下载次数: 38)

QQ截图20150403095203.png
回复 使用道具 举报
魔主 发表于 2015-4-3 09:51
#include
int main ()
{

呃呃呃 这些问题可以不要在意吧!!!只求红色部分代码的意思....
回复 使用道具 举报
魔主 发表于 2015-4-3 09:54
VC++  运行结果
红色部分也觉得没必要

在课本上看的...看不明白了,就来这里问问!!
回复 使用道具 举报
新手小渣渣 发表于 2015-4-3 09:57
呃呃呃 这些问题可以不要在意吧!!!只求红色部分代码的意思....

t++取不重复的个数,如果个数是10的倍数就打印不重复的数字
否则就打印个数不是10倍数时不重复的数字
最后打印不重复的个数
不知道理解对不,我也是菜鸟
回复 使用道具 举报
魔主 发表于 2015-4-3 10:04
t++取不重复的个数,如果个数是10的倍数就打印不重复的数字
否则就打印个数不是10倍数时不重复的数字
最 ...

之前的 i , j , k ,的取值范围不是已经确定了吗?没有可以被10整除的数字啊..还写这一句干啥用啊?
回复 使用道具 举报
新手小渣渣 发表于 2015-4-3 10:10
之前的 i , j , k ,的取值范围不是已经确定了吗?没有可以被10整除的数字啊..还写这一句干啥用啊? ...

书上可能写错了
要有怀疑精神,尽信书不如无书
回复 使用道具 举报
楼主 t是个数  当t为10的时候执行printf("%d%d%d\n",i,j,k);   也就是换行打印三位数的意思吧  否则执行printf("%d%d%d",i,j,k); 打印是没有换行的  楼主你觉得呢?你是从哪里获得代码啊
回复 使用道具 举报
bigpig 发表于 2015-4-3 10:28
楼主 t是个数  当t为10的时候执行printf("%d%d%d\n",i,j,k);   也就是换行打印三位数的意思吧  否则执行pri ...

当然如果楼主你没打错printf("%d%d%d",i,j,k);这句代码的话,这段标红的代码应该就是打印10个数不同三位数   换行  的意思,最后打印出t的个数
回复 使用道具 举报
bigpig 发表于 2015-4-3 10:28
楼主 t是个数  当t为10的时候执行printf("%d%d%d\n",i,j,k);   也就是换行打印三位数的意思吧  否则执行pri ...

明白了....谢谢啊!!!
回复 使用道具 举报
bigpig 发表于 2015-4-3 10:34
当然如果楼主你没打错printf("%d%d%d",i,j,k);这句代码的话,这段标红的代码应该就是打印10个数不同三位 ...

原来如此 明白了,知道什么意思了!谢谢:loveliness:
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马