[英]Programming in C finding smallest value in random array?
我程序的一部分被設計為在以隨機數存儲的數組中輸出最小和最大值。 我的程序在數組中輸出最大值就很好,但是在輸出最小值時,它會輸出一些垃圾。 我已經搜索了該網站,並且根據我的發現,它應該可以正常運行。 這是我的代碼,非常感謝您的幫助!
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void){
int randomNumbers[100];
double average;
int highest, smallest;
int sum = 0;
int i = 0;
int min, max;
srand(time(NULL));
printf("Enter min and max respectively: ");
scanf("%d %d", &min, &max);
smallest = highest = randomNumbers[0];
for (i; i < 100; i++){
randomNumbers[i] = rand() % (max - min + 1) + min;
sum = sum + randomNumbers[i];
if (highest < randomNumbers[i]){
highest = randomNumbers[i];
}
if (smallest > randomNumbers[i]){
smallest = randomNumbers[i];
}
printf("%d ", randomNumbers[i]);
if (i == 9 || i == 19 || i == 29 || i == 39 || i == 49 || i ==59 || i == 69 || i ==79 || i == 89)
printf("\n");
}
average = sum / 100;
printf("\nAverage: %lf", average);
printf("\nHighest: %d", highest);
printf("\nSmallest: %d", smallest);
}
問題是您的初始化:
smallest = highest = randomNumbers[0];
randomNumbers
尚未填充randomNumbers
。 如果先填充所有數字,可能會更清楚。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.