首页 > 其他分享 >8.5今日复习

8.5今日复习

时间:2024-08-05 18:55:27浏览次数:11  
标签:__ 10 8.5 复习 int sort key 今日 main

1:在堆区申请10个连续空间,手动输入10个数(递增),输入关键字key,采用折半查找方式查找关键字是否存在,存在给出位置,不存在,输出查找失败。

注意:main函数在main.c 输入函数,输出函数,查找函数,在find.c

 main函数代码:

#include <myhead.h>
#include "find.h"
#define MAX 10
int main(int argc, const char *argv[])
{
	/*
		*/
	int *p = malloc(sizeof(int)*MAX);
	myscanf(p);
	myprintf(p);
	int key;
	printf("请输入要查找的关键字:");
	scanf("%d",&key);
	myfind(p,key);
	return 0;
}

find.c代码:

#include <myhead.h>
#define MAX 10
int  myscanf(int *p)
{
	int i;
	printf("请输入10个数组元素:");
	for(i =0;i<MAX;i++)
	{
		scanf("%d",p+i);
	}
	return 0;
}
int myprintf(int *p)
{
	int i;
	printf("\n数组内容:\n");
	for(i  =0;i<MAX;i++)
	{
		printf("%d\t",*(p+i));
	}
	return 0;
}

void myfind(int *p,int key)
{
	int j=MAX-1,mid;
	int sub = -1;
	int i=0;
	while(i<=j)
	{
		mid = (i+j)/2;
		if(key>p[mid])
		{
			i = mid+1;
		}
		else if(key<p[mid])
		{
			j = mid-1;
		}
		else
		{
			sub =mid;
			break;
		}
	}
	if(sub==-1)
	{
		printf("查找失败\n");
	}
	else
	{
		printf("查找成功,该关键字在第%d个位置\n",sub+1);
	}
}

find.h代码:

#ifndef __FIND_H__
#define __FIND_H__
int myscanf(int *p);
int myprintf(int *p);
void myfind(int *p,int key);
#endif

2:在堆区申请10个连续空间,手动输入10个数(乱序),采用简单选择排序,输出排序后的结果。

注意:main函数在main.c 输入函数,输出函数,排序函数,在sort.c

main函数代码:

#include <myhead.h>
#include "sort.h"
#define MAX 10


int main(int argc, const char *argv[])
{
	/*
		*/
    int *p = malloc(sizeof(int)*MAX);
    input_s(p);

    ouput_s(p);
    sort_s(p);
    printf("\n排序后的结果:\n");
    ouput_s(p);
 	p=NULL;

	return 0;
}

sort.c代码:

#include <myhead.h>
#define MAX 10
int input_s(int *p)
{
    int i;
    printf("请输入10个元素:\n");
    for(i = 0;i<MAX;i++)
    {
        scanf("%d",p+i);
    }
    return 0;
}

int ouput_s(int *p)
{
    int i;
    for(i = 0;i<MAX;i++)
    {
        printf("%d\t",*(p+i));
    }
    return 0;    
}

int sort_s(int *p)
{
    int i,j,min,t;
    for(i = 0;i<MAX-1;i++)
    {
        min = i;
        for(j = i+1;j<MAX;j++)
        {
            if(p[j]<p[min])
            {
                min = j;
            }
        }
        if(i!=min)
        {
            t = p[i];
            p[i] = p[min];
            p[min] = t;
        }
    }    
}

sort.h代码:

#ifndef __SORT_H__
#define __SORT_H__
int input_s(int *p);
int ouput_s(int *p);
int sort_s(int *p);
#endif

标签:__,10,8.5,复习,int,sort,key,今日,main
From: https://blog.csdn.net/qq_62099195/article/details/140934364

相关文章

  • 7.31今日还是函数
    1.使用指针实现一维数组的传参,写一个冒泡排序的函数voidsort_(int*p,intlen) #include<stdio.h>#include<string.h>voidsort_(int*p,intlen){ intm; for(inti=0;i<len;i++) { for(intj=0;j<len-1;j++) { if(*(p+j)>*(p+j+1)) { ......
  • 学习笔记 韩顺平 零基础30天学会Java(2024.8.5)
    P460八大Wrapper类     黄色的父类是number,黑色的是自己独立的P461装箱和拆箱     手动装箱示例:                             intn1=100;                Intergerinterger=newInterger(n1);//......
  • 2024.8.5 test
    A你可以花费\(x^2\)的代价使\(A_i\)加上\(x\),\(x\ge0\),最后再加上代价为\(c\sum|A_i-A_{i-1}|\),问最小代价。\(n\le10^5\)。我们可以把序列分成若干“山峰”以及“山谷”,山峰是不会加的。考虑从山谷开始做,即每次取出最小值。设一开始处理\(A_i\),发现\(A_i\)最多是......
  • 8.5模考总结
    省流:坠机了,但没完全坠。\(T1\)水,直接枚举比较即可,赛事\(15min\)\(AC\),实际\(5min\),\(10min\)再打缺省源,最终得分\(100pts\)。\(T2\)模拟每一个括号,维护一个深度,当深度大于\(L\)或小于\(0\)时,累计答案即可,赛事\(50min\)\(AC\),最终得分\(100pts\)。\(T3\)一个......
  • 云原生周刊:Knative 1.15 版本发布|2024.8.5
    开源项目推荐helm-secretshelm-secrets是一个Helm插件,用于动态解密加密的Helm值文件。TofuControllerTofuController(以前称为WeaveTF-Controller)是Flux的一个控制器,用于以GitOps方式协调OpenTofu和Terraform资源。TracetestTracetest是一个使用OpenTelem......
  • shell复习(3)-循环
    流程控制1.if语句单分支if条件表达式then命令序列fi#!/bin/bashN=10if[$N-gt5];thenechoyesfi#bashtest.shyes双分支if条件表达式then命令序列1else命令序列2fi#!/bin/bashN=10if[$N-lt5];thenechoyeselseecho......
  • 8.5第四周周一总结
    1dijkstra堆优化练习1)邮寄员寄信题目多次运用最短路#include<bits/stdc++.h>usingnamespacestd;intn,m;constintmaxn=1e3+10;structnode{ intu,w; //顺序好像不能错};boolvis[maxn];intdist[maxn];vector<node>g[maxn];voiddijk(ints){ priority_qu......
  • GreatSQL 8.0.32-26 今日发布
    GreatSQL8.0.32-26今日发布版本信息发布时间:2024年08月05日版本号:8.0.32-26,Revisiona68b3034c3d下载链接:https://gitee.com/GreatSQL/GreatSQL/releases/tag/GreatSQL-8.0.32-26用户手册:https://greatsql.cn/docs/8.0.32-26/特性增强GreatSQL8.0.32-26版......
  • 【今日曝光】员工恶意删除文件怎么办?企业大佬这样解决
    面对突如其来的挑战总是需要智慧与决断。近日,一起员工恶意删除公司重要文件的事件引发了广泛关注,这不仅考验着企业的应急响应能力,更促使我们深思如何构建更加稳固的数据防护体系。今天,就让我们跟随企业大佬的步伐,一探他们是如何高效解决这一棘手问题的。迅速评估,冷静应对......
  • 【代码随想录】图论复习(Python版)
    深度优先搜索1.搜索过程一个方向搜,不到黄河不回头,直到遇到绝境了,搜不下去了,再换方向(换方向的过程就涉及到了回溯)2.代码框架回溯法的代码框架:defbacktracking(参数):if终止条件:存放结果returnfor选择本层集合中的元素(树中节点孩子的数量......