<求助>一个关于循环退出的部题
#include<stdio.h>#include<windows.h>
void main()
{
int num1,num2,num3;
num1=num2=1;
do{
printf("num1=%d\n",num1);
num3=num1+num2;
num1=num2;
num2=num3;
}while(num1>=100);//为什么这里加了条件不起作用?
system("pause");
}
#include<stdio.h> #include<windows.h> void main() { int num1,num2,num3; num1=num2=1; do{ printf("num1=%d\n",num1); num3=num1+num2; num1=num2; num2=num3; }while(num1>=100);//为什么这里加了条件不起作用? system("pause"); }do....while型循环,先不管条件,执行一次,然后去判断条件,执行一次后,num1的值变为num2的值,还是1,但比100小,说明不满足你的num1>=100,所以跳出了循环。应该是<=100,并且,你打印的应该是num3吧?
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int num1,num2,num3; num1=1;num2=1; do { num3=num1+num2; printf("num3=%d\n",num3); num1=num2; num2=num3; }while(num1<=100); system("PAUSE"); return 0; }打印结果: