打印

[提问] 一个C语言中的问题

一个C语言中的问题

谢谢大家能看我的贴先!
问题如下!
main()
{
int i,j,k;
printf("\n");
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)    /*确保i、j、k三位互不相同*/
    printf("%d,%d,%d\n",i,j,k);
   }
}

if (i!=k&&i!=j&&j!=k)这里应该怎么分析?

TOP

i不等于k且i不等于j且j不等于k,我实在不明白你的意思,分析什么你可以再说得清楚点
应该是从右往左来看j!=k
i!=j
i!=k

TOP

if (i!=k&&i!=j&&j!=k)
这个是 当三个数不等时输出其值,以上这句就是 判断三个数是否相等(如果不等则···)
! 是非的意思,&是与的意思,这样旧能明白了吧。
楼上的都分析的很清楚了, 我就不插嘴了。o(∩_∩)o...哈哈
一起交流软件开发:www.ineeke.cn

TOP

同意三楼的 我也不发表什么了
谢谢了啊!还有……
for(i=1;i<5;i++)这个我有点不明白,++是一直加一,然后直到4时停止是吧?如果输出时怎么用printf输出呢?给举个例子!谢谢!

TOP

引用:
原帖由 梦我心永恒 于 2008-3-7 14:45 发表
谢谢了啊!还有……
for(i=1;i
复制内容到剪贴板
代码:
       
for (i = 1; i < 5; ++i)
   printf("i = %d \n", i);
我不用插嘴了。

TOP

用1、2、3、4组成各位不同的3位数,共可组成多少个3位数,各是多少?
用三层循环,分别对个、十、百三位逐层循环,i,j,k代表这三位。
逻辑运算符&&,相同与Basic的 and
同真为真,当三个条件都满足时正好组成一个3位不同的3位数。循环历遍所有数,筛选输出。
孔子云:能开机乃菜基本之道。

Processed in 0.035701 second(s), 5 queries, Gzip enabled