int main()
{
int a = 0;
int b = 0;
int c = 1;
printf("请输入一个整数:");
scanf("%d", &a);
//方法1先得出需要乘多少次
while ( a > 0) {
a = a / 2;
b += 1;
}
b -= 1;
printf("小于输入整数的所有2的平方:");
while (b > 0) {
c *= 2;
b--;
printf(" %d", c);
}//方法2
//int d = 2;
//while (d < a) {
//printf(" %d", d);
//d *= 2;
//}小于输入数,并且最后一个数不显示
return 0;
}
4-9
int main()
{
int no = 0;
int a = 0;
printf("请输入一个整数:");
scanf("%d", &no);
//while语句是先判断表达式的值然后再执行语句
//所以当语句结束时a的值已经no大1
while (no < 0) {
printf(" 请不要输入一个负数");
scanf("%d", &no);
}
printf("所有正偶数项为:");
while ((a <= (no - 4))&&(no%2 == 0) ) {
a += 2;
printf(" %d", a);
}
while ((a <= (no - 3)) && (no % 2 == 1)) {
a += 2;
printf(" %d", a );
}
//可以从a最后的值,来考虑表达式
return 0;
}