min / max / avg lang:c

时间:2012-06-02 21:28:14

标签: c

我正在尝试编写执行以下操作的程序:

用户必须输入10个号码,但也可以选择停止。

然后程序应该输出他输入的数字的最小值/最大值/平均值。

我被告知要使用do / while循环。

我在代码中,完全陷入困境。有人可以折腾我吗?

#include <stdio.h>
main(void){
    int n;
    int nummin=5;
    int nummax=5;

    printf("Plese input a number between 1-10: ");
    scanf("%d", &n);
    while (n < 10 || n > 10) {
        printf("Please keep the number between 1-10, try again: "); 
        scanf("%d", &n); 
        }

    if n < nummin 
        n=nummin;
    else if n > nummax
        n=nummax;

1 个答案:

答案 0 :(得分:1)

试试这个:

#include <stdio.h>

int main() {
    int n, i = 0, min = 11, max = -1, sum = 0;

    do {
        printf("Enter a number between 1 and 10, or anything else to stop: ");
        scanf("%d", &n);
        if(max < n) max = n;
        else if(min > n) min = n;
        sum += n;
        i++;
    } while(n <= 10 && n >= 1);

    printf("Min: %d\n", min);
    printf("Max: %d\n", max);
    printf("Avg: %f\n", (float)sum / i);
}