首先,你要先理解什么叫"或",或的意思就是:全0出0,有1出1,也就是必须同时为假表达式才为假,否则为真; 像87,97 这类数就不能同时满足两个表达都为假的条件,所以就跑出来啰! |
int main() { int a = 1; while(a<=100) { if(a%10!=7&&a%7!=0) printf("%d\n",a); a++; } 你是要打印100以内的不是7的倍数且个位不是7的所有整数吧,那两个判断条件之间应该用&&。 |
a%10 != 7 || a % 7 != 0 a的末尾不是7,或者a不是7的倍数 |