我做的是一个1000以内的求一组数;(他们是除于2,3,4,5,6,都余1;但是又可以被7整除)请大家看看错在哪。 #include "stdio.h" main() {int i=2,t,s,q,u,w,x; for(i=2;i<=1000;i++) {t=i%2; s=i%3; q=i%4; u=i%5; w=i%6; x=i%7; if(x==0) {if(t==1,s==1,q==1,u==1,w==1) printf("%d ",i);} else i+0;}
getch();}
----------------解决方案--------------------------------------------------------
我自己改对了 #include "stdio.h" main() {int i=2,t,s,q,u,w,x; for(i=2;i<=1000;i++) { x=i%7; if(x==0) {t=i%2; s=i%3; q=i%4; u=i%5; w=i%6; if(t==1&&s==1&&q==1&&u==1&&w==1) printf("%d ",i);} else i+0;}
getch();}
谢谢大家当然如果大家有好的简单的算法请搞送我1
----------------解决方案--------------------------------------------------------
if(t==1,s==1,q==1,u==1,w==1)
if后面是个逗号表达式,逗号表达式的值是最后一个表达式的值,
也就是说(t==1,s==1,q==1,u==1,w==1)这个逗号表达式的值是w==1
还有{if(t==1,s==1,q==1,u==1,w==1)
printf("%d ",i);}
这里的大括号不需要,因为if后的语句只有一个,如果if后的语句为多个语句时才加{}.
----------------解决方案--------------------------------------------------------
yes that's right
----------------解决方案--------------------------------------------------------
我自己改对了 #include "stdio.h" main() {int i=2,t,s,q,u,w,x; for(i=2;i<=1000;i++) { x=i%7; if(x==0) {t=i%2; s=i%3; q=i%4; u=i%5; w=i%6; if(t==1&&s==1&&q==1&&u==1&&w==1) printf("%d ",i);} else //这个else 毫无意义 i+0;}
getch();}
谢谢大家当然如果大家有好的简单的算法请搞送我1
----------------解决方案--------------------------------------------------------
if(t==1,s==1,q==1,u==1,w==1)
其实最根本的问题在这,作为IF的判断语句,这样表示是不准确的。
----------------解决方案--------------------------------------------------------
请问这道题可不可以用函数来做呢! 我又作了一个,求第一个符合除2,3,4,5,6,余1;除7可以整除。但是有问题请朋友们给我看看 #include "stdio.h" main() {int i=2,t,s,q,u,w,x;
x=i%7; t=i%2; s=i%3; q=i%4; u=i%5; w=i%6; if(x==0&&t==1&&s==1&&q==1&&u==1&&w==1) printf("%d ",i); else i++; getch();}
----------------解决方案--------------------------------------------------------
用数组撒!
呵呵!
----------------解决方案--------------------------------------------------------
象这种类型的问题最好不要用数组。
那样没这样直观,而且烦琐。
讲效率,讲实用。
----------------解决方案--------------------------------------------------------
烦琐吗?
----------------解决方案--------------------------------------------------------