#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int num1 = 10;
int num2 = 20;
int *go() //go()的返回值是一個指針(地址)
{
return &num1;
}
void main1()
{
printf("%d\n", *go());
system("pause");
}
//使用隨機數生成一個數組,寫一個函數查找最小的數,並返回最小數的地址,在主函數中打印出最小數。
int *mindata(int num[], int n)
{
//int min = 0;
//for (int i = 1; i < n; i++)
//{
// if (num[i] < num[min])
// {
// min = i;
// }
//}
//return num + min;
int *min = num;
for (int i = 1; i < 10; i++)
{
if (*(num + i) < *(min))
{
min = num + i;
}
}
return min;
}
void main()
{
int num[10];
time_t ts;
srand((unsigned int)time(&ts));
for (int i = 0; i < 10; i++)
{
num[i] = rand() % 100;
printf("%d\n", num[i]);
}
printf("其中的最小值爲:%d\n", *mindata(num, 10));
printf("------------------------------------------\n");
*mindata(num, 10) = 1000; //用途:可以根據地址修改指定的數據
for (int i = 0; i < 10; i++)
{
printf("%d\n", num[i]);
}
system("pause");
}
函數的返回值是指針
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.