我如何在不返回值的情况下退出程序?

how can i exit the program without it returning a value?

当输入 1001 或大于它的值时,输出为 0。

当数字不多时应该给0,如果输入的数字大于限制应该退出,试过使用goto exit。

#include <stdio.h>
void main()
{
    int n;
    printf("Enter the number\n");
    scanf("%d", &n);
    int i, sum = 0;
    if (1 <= n <= 1000)
    {
        for (i = 2; i < n; i++)
        {
            if (n % i == 0)
                sum = sum + i;
        }
        (sum > n) ? printf("1") : printf("0");
    }
    else
        return;
}

这个if语句中的条件

if (1 <= n <= 1000)

相当于

if ( ( 1 <= n ) <= 1000)

sub-expression 1 <= n 的结果是 01。所以这个值在任何情况下都小于 1000.

来自 C 标准(6.5.8 关系运算符)

6 Each of the operators < (less than), > (greater than), <= (less than or equal to), and >= (greater than or equal to) shall yield 1 if the specified relation is true and 0 if it is false. The result has type int.

你需要写

if (1 <= n && n <= 1000)

使用逻辑与运算符。

注意,根据 C 标准,不带参数的函数 main 应声明为

int main( void )