数组的实参传递

数组作为函数传递参数

第一个事情:数组作为函数参数

1.数组元素作为函数参数

2.数组名作为函数参数

3.二维数组作为函数参数,实际上传递的是地址

c语言实际的基本操作:

输入一组数组

输出一组数组

累加一组数组的和

求出数组的最大值和最小值

求出数组的平均值

c语言课堂上的具体例题

1.统计最大值并统计他的索引

#include <stdio.h>  // 函数声明  
int max(int x, int y);  int main() {  int a[10];  // 用于存储10个整数的数组  int i, m, n;  printf("请输入10个整数:\n");  for(i = 0; i < 10; i++) {  scanf("%d", &a[i]);  // 输入10个数给a[0]~a[9]  }  m = a[0];  // 初始化最大值为数组的第一个元素  n = 0;     // 初始化最大值的索引为0  for(i = 1; i < 10; i++) {  if(max(m, a[i]) > m) {  // 若max函数返回的值大于m  m = max(m, a[i]);   // 更新最大值  n = i;              // 更新最大值的索引  }  }  printf("最大的数是:%d\n", m);  printf("它是第%d个数。\n", n + 1);  return 0;  
}  // max函数返回两个整数中的较大值  
int max(int x, int y) {  return (x > y) ? x : y;  
}

2.求出数组中的平均值带内部参数

#include <stdio.h>  float average(float array[10]); // 函数声明  int main() {  float score[10], aver;  int i;  printf("输入10个分数:\n");  for(i = 0; i < 10; i++) {  scanf("%f", &score[i]);  }  printf("\n");  aver = average(score); // 调用average函数  printf("平均分数是 %5.2f\n", aver);  return 0;  
}  float average(float array[10]) { // 定义average函数  int i;  float aver, sum = array[0];  for(i = 1; i < 10; i++) {  sum = sum + array[i]; // 累加学生成绩  }  aver = sum / 10; // 计算平均值  return aver;  
}

 3.通过选择法来排序

zhuyi:

选择一个个元素并逐步排列

#include <stdio.h>  void sort(int array[], int n) {  int i, j, temp;  for (i = 0; i < n-1; i++) {  for (j = i+1; j < n; j++) {  if (array[i] > array[j]) {  temp = array[i];  array[i] = array[j];  array[j] = temp;  }  }  }  
}  int main() {  int a[10];  printf("Enter array elements (10 elements):\n");  for(int i=0; i<10; i++) {  scanf("%d", &a[i]);  }  sort(a, 10); // 调用sort函数,a为数组名  printf("The sorted array:\n");  for(int i=0; i<10; i++) {  printf("%d ", a[i]);  }  printf("\n");  return 0;  
}

Zhuyi:这边赋值的是数组

4.看来排序也做完了,接下来不知道要将什么:其实是冒泡排序

zhuyi:冒泡排序比较的就是临街元素的大小并且逐步缩小范围

气泡排序(Bubble Sort)是一种简单的排序算法。它的工作原理是:通过不断地遍历待排序的数列,比较相邻的两个元素,如果它们的顺序错误就交换它们,直到没有需要交换的元素为止。以下是使用 C 语言实现气泡排序的示例代码:c
#include <stdio.h>  void bubbleSort(int arr[], int n) {  int i, j, temp;  for (i = 0; i < n-1; i++) {  for (j = 0; j < n-i-1; j++) {  if (arr[j] > arr[j+1]) {  temp = arr[j];  arr[j] = arr[j+1];  arr[j+1] = temp;  }  }  }  
}  int main() {  int arr[] = {64, 34, 25, 12, 22, 11, 90};  int n = sizeof(arr)/sizeof(arr[0]);  bubbleSort(arr, n);  printf("Sorted array: \n");  for (int i=0; i < n; i++) {  printf("%d ", arr[i]);  }  return 0;  
}
在这个示例中,bubbleSort 函数接收一个整数数组和数组的大小作为参数,然后使用嵌套的 for 循环来遍历和排序数组。如果当前元素大于下一个元素,它们就交换位置。这个过程一直持续到整个数组被排序。在 main 函数中,我们定义了一个待排序的数组,并调用 bubbleSort 函数来对其进行排序。最后,我们打印出排序后的数组。

 5,二维数组

#include <stdio.h>  void fun(int a[][3], int b[], int n) {  for (int i = 0; i < n; i++) {  b[i] = 0;  for (int j = 0; j < 3; j++) {  b[i] += a[i][j]; }  }  
}  int main() {  int a[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};  int b[3]; fun(a, b, 3);  for (int i = 0; i < 3; i++) {  printf("%d ", b[i]);  }  return 0;  
}

cccc程序设计统计

1.统计类型题目

2。公示类型题目

3、考察基础知识点类型

cccc例题表示

1、

avaGirl开始学习C语言程序设计了,当她学到数据表示的时候知道了两个数相加有时候是会溢出的,这让她明白了东方不败有时候会爱上令狐冲没有什么好稀奇的。
javaGirl总是会胡思乱想,虽然知道了有溢出这回事,但是她还想准确地知道两个64位无符号整数相加的时候是否会溢出。

输入格式:

首先一个整数t(t <= 500)代表数据组数。
每组测试数据包含两个64位无符号整数a和b。

输出格式:

如果两数相加溢出了,输出1。
否则输出0.

输入样例:

5
1 18446744073709551615
3 18446744073709551615
222 22222
0 18446744073709551615
565328238827302101 92165582197

输出样例:

1
1
0
0
0

#include <stdio.h>  int main() {  int t;  scanf("%d", &t);  while (t--) {  unsigned long long a, b;  scanf("%llu %llu", &a, &b);  if (a + b < a || a + b < b) {  printf("1\n");  } else {  printf("0\n");  }  }  return 0;  
}

2023年12月23日08:24:08段错误的C++有什么办法呢

小葵花妈妈课堂

简单的描述C语言中格式符%g的用法
%g是一个很好用的格式符,在很多时候可以方便我们。
在输出的时候我们使用%g会有什么样的奇特用法呢,比如我们想要输出一个12.3,但是如果你选择使用%f作为格式符,就会输出12.300000。但是很多时候我们只想要打印出12.3,这个时候可以选择%g进行格式化,输出结果就会变成12.3。它将后面无用的0全部舍去了,可以在很多时候满足题目的要求。

举个例子
12.3+12.7如果使用%f输出,你将会得到25.000000,而有的时候你并不想要小数点末尾这么多的0,你可能会选择强制转换成int类型,但是这样子会显得有点繁琐,这个时候%g的妙用就体现出来了,使用%g格式符输出之后,直接得到25了,它会自动将小数点后面没用的0过滤掉,这个设置就显得十分人性化了。而且小数点后面的有效数字也不会省略掉,这个格式符简直好用到爆!

再看看维基百科是怎么解释这个格式符的
'g’使用小写字母,'G’使用大写字母。小数点右侧的尾数0不被显示;显示小数点仅当输出的小数部分不为0。

真的是言简意赅。

#include <stdio.h>
int main(){
    printf("%f",12.3);
    printf("%g",12.3);
    printf("%f",12.3+12.7);
    printf("%d",int(12.3+12.7))
    printf("%g",12.3+12.7);
    return 0;
}
1
2
3
4
5
6
7
8
9
运行结果:

————————————————
版权声明:本文为CSDN博主「桃花er」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45930241/article/details/108587822

函数声明是放在主程序前面的,要求是定义的函数在主函数后面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576992.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go 语言Map(集合)

Go 语言Map(集合) Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据&#xff0c;key 类似于索引&#xff0c;指向数据的值。 Map 是一种集合&#xff0c;所以我们可以像迭代数组和切片那样迭代它。不过&#xff0c;Map 是无序的&#xff0c;我们无法…

Zookeeper整合Java实战,不同客户端使用汇总

Java学习面试指南&#xff1a;https://javaxiaobear.cn ZooKeeper应用的开发主要通过Java客户端API去连接和操作ZooKeeper集群。可供选择的Java客户端API有&#xff1a; ZooKeeper官方的Java客户端API。 第三方的Java客户端API&#xff0c;比如Curator。 ZooKeeper官方的客户…

2024年关于存储发展趋势的七大预言

本文介绍了2024年的七大存储发展趋势&#xff0c;涵盖网络安全、混合云存储、绿色IT、客户体验和容器化应用程序等方面&#xff0c;并阐述了如何腾出财务和运营资源、投入到人工智能&#xff08;AI&#xff09;及其他IT项目上&#xff0c;以及如何堵住IT技能缺口。 趋势1&#…

LLM之RAG理论(二)| RAG综述论文详解

论文地址&#xff1a;https://arxiv.org/pdf/2312.10997.pdf 大型语言模型&#xff08;LLMs&#xff09;展示了强大的能力&#xff0c;但在实际应用中仍面临挑战&#xff0c;如幻觉现象、知识更新缓慢&#xff0c;以及在回答中缺乏透明度。检索增强生成&#xff08;RAG&#xf…

制作TikTok获客脚本必备源代码!

在这个数字时代&#xff0c;TikTok已成为全球最受欢迎的社交媒体平台之一&#xff0c;无数的品牌和企业都试图通过这个平台吸引潜在客户。 但是&#xff0c;要想在TikTok上获得更多关注和粉丝&#xff0c;除了制作有趣、有创意的内容外&#xff0c;还需要借助一些自动化工具来…

路由器介绍和命令操作

先来回顾一下上次的内容&#xff1a; ip地址就是由32位二进制数组 二进位数就是只有数字0和1组成 网络位&#xff1a;类似于区号&#xff0c;表示区域作用 主机位&#xff1a;类似于号码&#xff0c;表示区域中编号 网络名称&#xff1a;网络位不变&#xff0c;主机位全为0 …

【svn】win11最新svn每天自动化定时update、commit,隐藏窗口,定时脚本编写

本文使用schtasks结合bat脚本实现全自动svn update以及commit操作。执行时隐藏cmd窗口&#xff0c;全自动后台执行。 执行脚本 写脚本参考了网上很多文章&#xff0c;但是这些文章的方法都有问题或者已经失效&#xff0c;比如&#xff1a; 老版本的bat脚本&#xff0c;使用v…

【hacker送书第11期】Python数据分析从入门到精通

探索数据世界&#xff0c;揭示未来趋势 《Python数据分析从入门到精通》是你掌握Python数据分析的理想选择。本书深入讲解核心工具如pandas、matplotlib和numpy&#xff0c;助您轻松处理和理解复杂数据。 通过matplotlib、seaborn和创新的pyecharts&#xff0c;本书呈现生动直…

本地部署Jellyfin影音服务器并实现远程访问内网影音库

文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及&#xff0c;各种各样的使用需求也被开发出来&…

路径规划最全综述+代码+可视化绘图(Dijkstra算法+A*算法+RRT算法等)

路径规划综述 1. 背景介绍 路径规划是指在给定的环境中找到从起点到终点的最佳路径的过程。它在现实生活中有着广泛的应用&#xff0c;包括无人驾驶、物流配送、机器人导航等领域。随着人工智能和计算机技术的发展&#xff0c;路径规划技术也在不断地得到改进和应用。 路径规划…

C# Onnx yolov8 pokemon detection

目录 效果 模型信息 项目 代码 下载 C# Onnx yolov8 pokemon detectio 效果 模型信息 Model Properties ------------------------- date&#xff1a;2023-12-25T17:55:44.583431 author&#xff1a;Ultralytics task&#xff1a;detect license&#xff1a;AGPL-3.0 h…

高德地图_公共交通路径规划API,获取两地点之间的驾车里程和时间

import pandas as pd import requests import jsondef get_dis_tm(origin, destination,city,cityd):url https://restapi.amap.com/v3/direction/transit/integrated?key xxx #这里就是需要去高德开放平台去申请key,请在xxxx位置填写,web服务APIlink {}origin{}&desti…

MongoDB更新文档

3.4 MongoDB更新文档 MongoDB 使用 update() 和 save() 方法来更新集合中的文档。 update() 更新 update() 方法用于更新已存在的文档。语法格式如下&#xff1a; db.collection.update(<query>,<update>,{upsert: <boolean>,multi: <boolean>,wri…

[C/C++]数据结构: 链式二叉树的构建及遍历

一: &#x1f4ac;二叉树的概念 1.1:&#x1f6a9; 概念 二叉树是指树中节点的度不大于2的有序树,它是一种最简单且重要的树,二叉树的递归定义为:二叉树是一颗空树,或者是一颗由一个根节点和两颗互不相交的,分别称为跟的左孩子和右孩子树组成的非空树,其中左子树和右子树都是二…

YOLOv5 目标计数 | 图片上绘制计数结果

修改方法: 只需要改 detect.py for path, im, im0s, vid_cap, s in dataset: 下新增一行 class_counts = {} class_counts[int(c)] = class_counts.get(int(c

react native项目从创建到运行,以及一些常用命令和可能出现的问题

# 环境版本 "react": "18.2.0", react-native-cli: 2.0.1 react-native: 0.71.10 Metro v0.73.9 node 16 # 我的代码托管地址 https://gitee.com/xiaoshuozi/react-native-simple-frame.git # 代码推送 git add * git commit -m 首页添加静态列表&#xff…

《数字图像处理-OpenCV/Python》连载:图像的阈值处理

《数字图像处理-OpenCV/Python》连载&#xff1a;图像的阈值处理 本书京东 优惠购书链接 https://item.jd.com/14098452.html 本书CSDN 独家连载专栏 https://blog.csdn.net/youcans/category_12418787.html 第 9 章 图像的阈值处理 图像的阈值处理简单、直观&#xff0c;计算…

网络监测之如何保障企业业务系统安全?

网络信息安全在网络时代的重要性不言而喻。随着互联网的普及和数字化进程的加速&#xff0c;网络已经成为人们生活、工作和学习的重要平台。在这个平台上&#xff0c;信息交流、数据存储、在线支付等都需要依赖于网络信息安全。其中企事业单位业务系统安全值得关注。 企事业单…

水印消除:三种简单方法教你如何去除图片水印

当需要使用在线素材图片作为头像或壁纸时&#xff0c;水印可能成为不便之处。需要解决如何去除水印的问题吗&#xff1f;以下是几种方法供参考&#xff1a; 如何去除水印方法一&#xff1a;水印云去除水印&#xff08;适用于电脑端和手机端&#xff09; 水印云专注于无痕去水印…

给零基础朋友的编程课07 - 代码

给零基础朋友的编程课07-初识色彩、初识变量、案例3讲解_哔哩哔哩_bilibili Code: // // 案例3 // //// -设定画面- // size(1000, 1000); // 设置画面大小 background(7, 119, 132); // 设置背景颜色// - 绘画 - //// 1 绘制垂线 // 设定线条风格 …