该代码即将将整数分隔为数字,该代码可以工作,但我对两个“while”如何一起工作遇到了麻烦。
#include <stdio.h>
int main() {
int num, temp, factor = 1;
printf("Enter a 5 digit number: ");
scanf("%d", &num);
temp = num;
while (temp) {
temp = temp / 10;
factor = factor * 10;
}
while (factor > 1) {
factor = factor / 10;
printf("%d ", num / factor);
num = num % factor;
}
return 0;
}
最佳答案
#include int main() { int num, temp, factor = 1; printf("Enter a 5 digit number: "); scanf("%d", &num); 60403 temp = num; 60403 //while (temp) { temp = temp / 10; 6040 factor = factor * 10; 10 temp = temp / 10; 604 factor = factor * 10; 100 temp = temp / 10; 60 factor = factor * 10; 1000 temp = temp / 10; 6 factor = factor * 10; 10000 temp = temp / 10; 0 factor = factor * 10; 100000 //} //while (factor > 1) { factor = factor / 10; 10000 printf("%d ", num / factor); 60403/10000 is 6 num = num % factor; 403 factor = factor / 10; 1000 printf("%d ", num / factor); 403/1000 is 0 num = num % factor; 403 factor = factor / 10; 100 printf("%d ", num / factor); 403/100 is 4 num = num % factor; 3 factor = factor / 10; 10 printf("%d ", num / factor); 3/10 is 0 num = num % factor; 3 factor = factor / 10; 1 printf("%d ", num / factor); 3/1 is 3 num = num % factor; 0 //} return 0; }
关于c - 这两个将整数分成数字的 while 循环是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73827704/