大碗编程

Did You Know?

while循环语句例子(C语言中while的用法)

例:用户输入一个数,判断是否为回文数。

回文数:设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数,例如:121,12321

代码示例

#include<stdio.h>intmain(void){ intnum; intn; intsum = 0; printf("请输入需要判断的数字:"); scanf("%d",&num); n = num; while(n){ sum = sum*10+ n%10; n /= 10; } if(sum == num){ printf("%d是回文数n",num); } else{ printf("%d不是回文数n",num); } return0; }

运行分析

1.测试数字256,执行while循环

(1)n=256,while循环成立

sum=0*10+256%10=6

n=n/10=256/10=25

(2)n=25,while循环成立

sum=6*10+25%10=65

n=n/10=25/10=2

(3)n=2,while循环成立

sum=65*10+2%10=652

n=n/10=2/10=0

(4)n=0,while循环不成立,结束循环,此时sum的值为652

while循环执行完毕,执行if语句判断

(1)if(sum == num),此时sum=652,num=256,因此if不成立,输出256不是回文数

运行结果

2.测试数字121,执行while循环

(1)n=121,while循环成立

sum=0*10+121%10=1

n=n/10=121/10=12

(2)n=12,while循环成立

sum=1*10+12%10=12

n=n/10=12/10=1

(3)n=1,while循环成立

sum=12*10+1%10=121

n=n/10=1/10=0

(4)n=0,while循环不成立,结束循环,此时sum=121

while循环执行完毕,执行if语句

(1)if(sum==n),此时sum=121,n=121,因此if成立,打印输出121是回文数

运行结果

总结

(1)利用while循环以此拆分数字,进行累加。

(2)利用if语句对输入的数字,和拆解后累加的数字进行判断。

(3)利用取余(%),除法(/)对数字进行拆解累加。