c语言怎么求题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? - 爱问答

(爱问答)

c语言怎么求题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

#include<stdio.h>

int main(void){

int a,b,c,count=0;

printf(" ");

for(a=1;a<=4;a++)

for(b=1;b<=4;b++)

for(c=1;c<=4;c++)

{

if(a!=b&&a!=c&&b!=c)

count++;

printf("%d,%d,%d ",a,b,c);

 

}

 

printf("%d",count);

return 0;

}

以上程序得出结果是对的,但为什么把count++;放到printf("%d,%d,%d ",a,b,c);后面得到的结果是64,

我一向建议,初学c语言不要省略条件判断单条语句中的{}

你上面的程序 ,循环中完整的应该是

if(a!=b&&a!=c&&b!=c)

{

  count++;

}

printf("%d,%d,%d ",a,b,c);

这个计数结果是对的,但输出的排列是错的,你把它改为

if(a!=b&&a!=c&&b!=c)

printf("%d,%d,%d ",a,b,c);

  count++; 

输出对了,但计数肯定是不对的,因为它来在条件下面执行

正确的应该是

if(a!=b&&a!=c&&b!=c)

{

printf("%d,%d,%d ",a,b,c);

  count++; 

}

也可以是

if(a!=b&&a!=c&&b!=c)

{

  count++; 

printf("%d,%d,%d ",a,b,c);

}


相关标签:c语言

下一篇:http//219.143.235.80:9090/wjdc/login.html

上一篇:看看。Python报错:

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?