zoukankan      html  css  js  c++  java
  • 生成一个一维数组,有10个元素,都用随机数填充,用指针轮询的办法实现函数查找一个数是否存在。

    题目:生成一个一维数组,有10个元素,都用随机数填充,用指针轮询的办法实现函数查找一个数是否存在,具体实现代码如下:

    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>
    int find(int * pInput, int nLen, int nKey, int * pOut)
    {
    	if (!pInput)
    	{
    		return 0;
    	}
    	if (!pOut)
    	{
    		return 0;
    	}
    	int * pCurPos = pInput;
    	int * pEndPos = pInput + nLen;
    	*pOut = 0;
    	while (pCurPos < pEndPos)
    	{
    		if (*pCurPos == nKey)
    		{
    			*pOut = 1;
    			break;
    		}
    		pCurPos++;	
    	}
    	return 1;
    }
    int main()
    {
    	int * p = (int *)malloc(sizeof(int)* 10);
    	if (!p)
    	{
    		printf("内存分配失败.
    ");
    		return 0;
    	}
    	int i = 0;
    	srand(time(NULL));
    	for (i = 0; i < 10; i++)
    	{
    		p[i] = rand() % 10;
    	}
    	printf("数组元素:
    ");
    	for (i = 0; i < 10; i++)
    	{
    		printf("%d	", p[i]);
    	}
    	printf("
    ");
    	int nTemp = 0;
    	int nFind = 0;
    	printf("请输人要查询的数据:
    ");
    	scanf("%d", &nTemp);
    	if (find(p, 10, nTemp, &nFind) == 0)
    	{
    		printf("查询失败.
    ");
    	}
    	else
    	{
    		if (nFind == 0)
    		{
    			printf("未找到元素:%d
    ", nTemp);
    		}
    		else
    		{
    			printf("已经找到元素:%d
    ", nTemp);
    		}
    	}
    	if (p)
    	{
    		free(p);
    	}
    	system("pause");
    	return 0;
    }
    运行效果如图1所示:

    图1 运行效果

  • 相关阅读:
    [bzoj4197][Noi2015]寿司晚宴
    [bzoj3531][Sdoi2014]旅行
    [洛谷P1430]序列取数
    [洛谷P2044][NOI2012]随机数生成器
    [洛谷P2839][国家集训队]middle
    [洛谷P3937]Changing
    [bzoj3532][Sdoi2014]Lis
    [洛谷P2590][ZJOI2008]树的统计
    [洛谷P4311]士兵占领
    [洛谷P1879][USACO06NOV]玉米田Corn Fields
  • 原文地址:https://www.cnblogs.com/new0801/p/6176911.html
Copyright © 2011-2022 走看看