要求用户输入1到100之间的随机数。然后询问他想在输入的第一个数字之前显示多少个数字。
如果用户输入9并希望在9之前有3个数字,则程序应显示:

6 7 8 9

我完成不了。
#include <stdio.h>
#include <stdlib.h>


int main()
{
   int endnum, pre;


    printf("Enter a random number between 1 and 100: ");
    scanf("%d", &endnum);

    printf("how many numbers he wants to display that precedes first number you entered: ");
    scanf("%d", &pre);

    num = endnum - pre;
    printf (%d, num+1)
    num = num + 1
    while (num <= endnum)


    return 0;
}

最佳答案

你很接近。你有preendnum。您只需要从pre循环到endnum(包括),并打印出其中的每一个。
如果愿意,可以使用while循环,但对我来说,这种情况更直接地导致for循环。类似于:

for (num = endnum - pre; num <= endnum; ++num)
{
    printf("%d ", num);
}

其中num预先声明为int

08-04 15:32