繁体   English   中英

如何添加暂停 Function 以显示 Output?

[英]How to add a Pause Function to Display Output?

我从 C 开始,并且正在处理一项任务,要求我在 -50 和 100 之间接受用户输入,然后计算输入数字的各种特征,例如平均值、偶数/奇数等(程序将停止一旦输入 -999)。 我还应该让程序暂停并显示output,一旦用户按下任意键,屏幕将清除,用户将输入另一个数字。

其他一切都正常运行,到目前为止的代码如下所示:

#include <stdio.h>
#include <ctype.h>

int main()
{
    //used for math
    int i = 0;
    float num[100], sum = 0.0, average;
    //user input number
    float x = 0.0;
    //used to determine minimum and maximum numbers
    unsigned int min, max, buf;
    //used for determining prime number
    int flag;
    //for pause button
    char ch;

    while (1) {
        printf("%d. Enter number: ", i + 1); 
        scanf("%f", &x);
        //establish exit number
        if (x == -999)
            break;
        //make sure number is within range
        if (x >= -50 && x <= 100)
        {
            num[i] = x;
            sum += num[i];
            i++;
            //determin minimum and maximum
            if (x >= buf)
            {
                max = x;
            }
            if (x <= buf)
            {
                min = x;
            }
            buf = x;
        }
        else
        {
            printf("invalid number, must enter between -50 and 100\n");
        }
    }

    average = sum / i;

    //determine if prime num
    if (x / i == 0)
    {
       flag = 1;
    }

    //display output
    printf("\n Average = %.2f", average);
    printf("\n Sum = %.2lf", sum);
    printf("\n Numbers entered = %d", i);
    printf("\n The highest value entered : %u", max);
    printf("\n The lowest value entered : %u", min);
    if (x / 2 == 0)
        printf("\n%.2f is even.", x);
    else
        printf("\n%.2f is odd.", x);

    //determine prime number
    if (flag == 0)
    {
        printf("\n%.2f is a prime number.", x);
    }
    if (flag == 1)
    {
        printf("\n%.2f is not a prime number.", x);
    }
    printf("\nThank you for using my program, have a nice day :)");

    return 0;
}

暂停按钮是唯一无法正常工作的按钮。 会有人知道实现所述暂停按钮 function 的最佳方法的答案吗? 谢谢:)

编辑:我没有与“如何在 C 中暂停”问题相同的问题,因为一旦输入 -999,我就可以看到 output,我只需要在屏幕暂停时看到 output。

您可以使用getchar(); 暂停您的系统。 一旦用户按下任何键,它将继续运行。 要清除屏幕,您将需要#include<conio.h>库,以便您可以使用clrscr();

这是一个 function 供您使用:

#include<stdio.h>
#include<conio.h>

void func() {
     getchar(); // Pauses the system until user presses a key
     clrscr();  // Clears the screen
}

每次您希望它暂停和清除屏幕时,您只需调用 function。 由于getchar(); 将暂停系统,它不会传递给clrscr(); 除非用户按下一个键。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM