[求助] if和 while 的问题
#include <stdio.h>main()
{
int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i++ < 7)
{
if(p[i]%2)
{
j+=p[i];
}
}
printf("%d\n",j);
}
----------------解决方案--------------------------------------------------------
[QUOTE]
[求助] if和 while 的问题
#include <stdio.h>
main()
{
int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i< 7)
{
if(p[i]%2)
j+=p[i];
i++;
}
printf("%d\n",j);
}
[/QUOTE] main()
{
int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i< 7)
{
if(p[i]%2)
j+=p[i];
i++;
}
printf("%d\n",j);
}
----------------解决方案--------------------------------------------------------
if(p[i]%2)
的意思是不是相当于!p[i]%2==0....
----------------解决方案--------------------------------------------------------
这个不对啊,。我原来的程序的显示的值是45,现在的是56啊!
----------------解决方案--------------------------------------------------------
不知道你到底是要解决什么问题?
----------------解决方案--------------------------------------------------------
两个红色的部分是什么意思?然后是哪几个数字相加的就这个问题?
----------------解决方案--------------------------------------------------------
第1个是控制循环次数的。应该是8次吧,也就是把P[8]的的每个数都检测一下~
第2个是看,如果这个数是偶数就进行相加~
所以相加的数应该是12+14+16+18吧。。。但结果。我来运行下看看~
----------------解决方案--------------------------------------------------------
include <stdio.h>
main()
{
int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i< 7) 以后请注意书写格式。
{
if(p[i]%2) 此句表示:如果p[i]%2 是1 就执行下面语句,即p[i]={11,13,15,17 }
j+=p[i]; 此句表示:叠加数组,j=11+13+15+17=56
i++; 我个人是这么认为的,不知道对不对
}
printf("%d\n",j);
}
----------------解决方案--------------------------------------------------------
饿。我弄错咯~~~~
汗。
LZ把i++写在那里面和外面好象一样吧。对结果没有影响~
----------------解决方案--------------------------------------------------------
if(p[i]%2)必须要等于1么?是真值就可以了吧
----------------解决方案--------------------------------------------------------