admin 管理员组

文章数量: 1087749

数组无序查找

在一组无序数列中,查找特定某个数值,并返回其位置pos。

//在一组无序的数组中查找给定的数字,并返回下标,2016.5.26
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define  MAX 100
void input(int num[])//实参传入的数组的首地址,而不是整个数组
{int i;srand((unsigned)time(NULL));//产生随机函数的随机数种子for(i = 0; i < MAX; i++){num[i] = rand()%100;}
}
void  output(int num[])
{int i;for (i = 1; i <= MAX; i++){printf("%5d", num[i-1]);if (i % 10 == 0)printf("\n");}}int  find(int num[],int x)
{int i;for (i = 0; i < MAX; i++)if (num[i] == x)return i;return 0;}void main()
{int x, pos, num[MAX];input(num);printf("产生的随机数为:\n");output(num);printf("\n");printf("请输入要查找的数:\n");scanf("%d", &x);pos = find(num, x);if (pos)printf("OK!,%d is found in :%d\n", x, pos);elseprintf("%d is not found", x);system("pause");
}


本文标签: 数组无序查找