标题:这个程序没看懂逻辑,有谁解释一下?
取消只看楼主
黑暗骑士5D
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2019-11-6
结帖率:100%
已结贴  问题点数:5 回复次数:1 
这个程序没看懂逻辑,有谁解释一下?
给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。

输入格式:

输入在一行中给出A。

输出格式:

输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。

输入样例:

2
输出样例:

234 235 243 245 253 254
324 325 342 345 352 354
423 425 432 435 452 453
523 524 532 534 542 543



int main(){
   int i,j,k;
   int cnt=0;
   int a=0;
   scanf("%d",&a);
   i=a;//注意i,j,k的初始值是在while()外面初始化的
   while(i<=a+3){
       j=a;
       while(j<=a+3){
           k=a;
           while(k<=a+3){
               if(i!=j&&i!=k&&j!=k){
                   cnt++;
                   printf("%d%d%d",i,j,k);
                   if(cnt==6){
                       printf("\n");
                       cnt=0;
                   }else{
                       printf(" ");
                   }
               }
               k++;
           }
           j++;
       }
       i++;
   }
}
搜索更多相关主题的帖子: printf int 逻辑 while 输出 
2019-12-04 10:15
黑暗骑士5D
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2019-11-6
得分:0 
回复 2楼 rjsp
printf("%d%d%d%c",i,j,k," \n"[++cnt%6==0])
看不懂啊,这个中括号里是啥意思,为什么这么用
2019-12-04 11:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498194-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015680 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved