C语言学习——指针精华(3)工程项目复习

C语言学习——指针精华(3)工程项目复习编程题一、定义一个数组,从键盘输入10个整数,将10个数字中的最大值和最小值进行位置交换 (使用指针的方式)。代码如下:#include”pch.h”#include<stdio.h>void SWAP(int*p1, int*p2);int main(){ int a[10]; for (int i = 0; i < 10; i++) { scanf_…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

编程题

一、定义一个数组,从键盘输入10个整数,将10个数字中的最大值和最小值进行位置交换 (使用指针的方式)。

代码如下:

#include"pch.h"
#include<stdio.h>
void SWAP(int*p1, int*p2);

int main()
{ 
   
	int a[10];
	for (int i = 0; i < 10; i++)
	{ 
   
		scanf_s("%d", &a[i]);
	}
	int*min = &a[0];
	int*max = &a[0];
	for (int i = 0; i < 10; i++)
	{ 
   
		if (a[i]>*max)
		{ 
   
			max = &a[i];
		}
		if (a[i]<*min)
		{ 
   
			min = &a[i];
		}
	}
	printf("%d %d\n", *min, *max);
	printf("交换前地址%p,%p\n", min, max);
	SWAP(min,max);
	return 0;
}

void SWAP(int*p1,int*p2)
{ 
   
	int*temp;
	temp = p2;
	p2 = p1;
	p1 = temp;
	printf("%d %d\n", *p1, *p2);
	printf("交换后地址%p,%p\n",p1, p2);
}

结果如下:
在这里插入图片描述

二、有如下一段字符串” ajskldjfklajdfl ”,自定义一个函数统计出其中j字符在该字符串中所出现的次数。(使用指针的方式实现)

代码如下:

在这里插入图片描述
结果如下:
在这里插入图片描述

简答题:

1.请说明数组指针和指针数组的区别:

数组指针是一个指针变量,它占有内存中一个指针的存储空间。指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间,是存放指针的数组。

2.请说明函数指针与指针函数的区别:

指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针
函数指针是指向函数的指针变量,即本质是一个指针变量。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170988.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月18日 上午8:36
下一篇 2022年8月18日 上午8:36


相关推荐

  • 目标检测中的样本不平衡处理方法——OHEM, Focal Loss, GHM, PISA

    目标检测中的样本不平衡处理方法——OHEM, Focal Loss, GHM, PISA1 前言目前 计算机视觉中的性能最好的目标检测方法主要分为两种 one stage 和 two stage 方法 two stage 方法分为两步 第一步为候选区域生成阶段 Proposalstag 通过如 SelectiveSea EdgeBoxes 等方法可以生成数量相对较小候选目标检测框 第二步为分类与回归阶段 对第一阶段生成的 CandiateProp 进行分类和位置

    2026年3月17日
    2
  • 字节豆包大模型的几个重磅更新

    字节豆包大模型的几个重磅更新

    2026年3月12日
    2
  • 网络协议的三要素是什么?各有什么含义?_网络协议三要素中语法规定了

    网络协议的三要素是什么?各有什么含义?_网络协议三要素中语法规定了网络协议的三要素是什么?1、语法语法用来规定信息格式。数据及控制信息的格式、编码及信号电平等。2、语义语义用来说明通信双方应当怎么做。用于协调与差错处理的控制信息。3、定时定时(时序)定义

    2022年8月4日
    7
  • linux下如何查询jdk的安装路径

    linux下如何查询jdk的安装路径linux 下如何查询 jdk 的安装路径 有的人说用 whereis 或者 which 这是多么扯淡啊 还有人说 直接 echo JAVA HOME 就行 这是典型的只 copy 不思考 使用 echo JAVA HOME 的前提条件是设置了 JAVA HOME 如果没设置 就什么也查不到 ubuntu VM 0 15 ubuntu taoge echo JAVA HOME

    2026年3月18日
    2
  • Flutter实现微信支付和iOS IAP支付

    Flutter实现微信支付和iOS IAP支付Flutter 支付微信支付 iOSIAP 应用内支付测试 IAP 中断购买的测试公司近期将收费的功能排期了 由于项目做的是线上教育 提供的服务属于虚拟物品 根据 iOS 官方的规定 虚拟物品交易只能使用 iOS 应用内支付 其他类似微信 支付宝官方都是明文规定不允许存在的 注 虚拟物品才有此规定 且 iOS 官方收税 30 而有实体物品交易的 官方允许在提供应用内支付的前提下 提供其他支付方式供用户选择 结合相关平台规定 我们最终确定支付方式为 Android 端使用微信支付 iOS 使用 IAP 应用内支付 微信支付

    2026年3月17日
    2
  • 图的广度优先搜索(BFS)和深度优先搜索(DFS)算法解析

    图的广度优先搜索(BFS)和深度优先搜索(DFS)算法解析BFS DFS 算法解析 算法入门 2018 6 21 前言和树的遍历类似 图的遍历也是从图中某点出发 然后按照某种方法对图中所有顶点进行访问 且仅访问一次 但是图的遍历相对树而言要更为复杂 因为图中的任意顶点都可能与其他顶点相邻 所以在图的遍历中必须记录已被访问的顶点 避免重复访问 根据搜索路径的不同 我们可以将遍历图的方法分为两种 广度优先搜索和深度优先搜索 2 图的基本概念 2 1 无向图和无向

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号