在此示例中,您將學(xué)習(xí)在動態(tài)分配的內(nèi)存中查找用戶輸入的最大數(shù)字。
要理解此示例,您應(yīng)該了解以下C語言編程主題:
#include <stdio.h> #include <stdlib.h> int main() { int num; float *data; printf("輸入元素總數(shù): "); scanf("%d", &num); //為num元素分配內(nèi)存 data = (float *)calloc(num, sizeof(float)); if (data == NULL) { printf("錯誤! ! !內(nèi)存分配。"); exit(0); } //存儲用戶輸入的數(shù)字。 for (int i = 0; i < num; ++i) { printf("輸入數(shù)字 %d: ", i + 1); scanf("%f", data + i); } //尋找最大的數(shù)字 for (int i = 1; i < num; ++i) { if (*data < *(data + i)) *data = *(data + i); } printf("最大的數(shù) = %.2f", *data); return 0; }
輸出結(jié)果
輸入元素總數(shù): 5 輸入數(shù)字 1: 3.4 輸入數(shù)字 2: 2.4 輸入數(shù)字 3: -5 輸入數(shù)字 4: 24.2 輸入數(shù)字 5: 6.7 最大的數(shù) = 24.20
在程序中,要求用戶輸入元素數(shù),該元素數(shù)存儲在變量num中。 我們將為num個浮點值分配內(nèi)存。
然后,要求用戶輸入num。 這些數(shù)字存儲在動態(tài)分配的內(nèi)存中。
最后,確定這些數(shù)字中最大的數(shù)字并將其打印在屏幕上。