C 中的数学条件

问题描述 投票:0回答:1

我是一名 CSE 新生。我在 w3school 上找到了这段代码,但不知道发生了什么。

#include <stdio.h>

int main() {
  // A variable with some specific numbers
  int numbers = 12345;
  
  // A variable to store the reversed number
  int revNumbers = 0;

  // Reverse and reorder the numbers
  while (numbers) {
    // Get the last number of 'numbers' and add it to 'revNumber'
    revNumbers = revNumbers * 10 + numbers % 10;
    // Remove the last number of 'numbers'
    numbers /= 10;
  }

  // Output the reversed numbers
  printf("%d", revNumbers);

  return 0;
}

谁能解释一下循环条件?

c math
1个回答
1
投票

谁能解释一下循环条件?

它一直除到零。 C 中的表达式如果非零则求值为 true,否则如果为零则求值为 false。

由于是整数除法,所以永远不会有余数。所以你得到 12345, 1234, 123, 12, 1,然后循环停止。

© www.soinside.com 2019 - 2024. All rights reserved.