#include int ws(int n){int a=1;while(n/=10)a++;return a;}void main( ){int n;printf("please input a integer\n");scanf("%d",&n);printf("它的位数是%d\n",ws(n));}while(n/=10)是什么意思啊
来源:学生作业帮助网 编辑:六六作业网 时间:2024/10/01 11:16:42
#include int ws(int n){int a=1;while(n/=10)a++;return a;}void main( ){int n;printf("please input a integer\n");scanf("%d",&n);printf("它的位数是%d\n",ws(n));}while(n/=10)是什么意思啊
#include
int ws(int n)
{
int a=1;
while(n/=10)
a++;
return a;
}
void main( )
{
int n;
printf("please input a integer\n");
scanf("%d",&n);
printf("它的位数是%d\n",ws(n));
}
while(n/=10)是什么意思啊
#include int ws(int n){int a=1;while(n/=10)a++;return a;}void main( ){int n;printf("please input a integer\n");scanf("%d",&n);printf("它的位数是%d\n",ws(n));}while(n/=10)是什么意思啊
n/=10 就是 n = n/10 也就是 把 n 除 10 的值 赋值给 n.
由于n和10都是整形,所以/是整除,即舍去了余数,如 100/10 = 10,101/10 = 10 (余数1舍去了),99 / 10 = 9 (余数9舍去了),10/10 = 1,9/10 = 0 (余数9舍去了).
你的程序中是判断一个整数有多少位,比如 1234.
第1次 循环开始 n/10后 n = 123,循环结束 a=2
第2次 循环开始 n/10后 n = 12,循环结束 a=3
第3次 循环开始 n/10后 n = 1,循环结束 a=4
第4次 循环开始 n/10后 n = 0,终止循环(因为非0值,执行循环,0终止循环)
所以结果1234是一个4位数