七、函数练习

目录

1. 写一个函数可以判断一个数是不是素数。(素数只能被1或其本身整除的数)

2. 一个函数判断一年是不是闰年。

3.写一个函数,实现一个整形有序数组的二分查找。

4. 写一个函数,每调用一次这个函数,使得num每次增加1 。


1. 写一个函数可以判断一个数是不是素数。(素数只能被1或其本身整除的数)
//1. 写一个函数可以判断一个数是不是素数。(素数只能被1或其本身整除的数)
//打印100-200之间的素数
int main()
{int i = 0;int count = 0;for ( i = 100; i <=200; i++){//判断i是否为素数//判断7.就拿2~i-1之间的数字去试除iint flag = 1;//flag是1,表示是素数int j = 0;for ( j = 2; j <= i-1; j++){if (i % j == 0){flag = 0;break;}}if (flag==1){count++;printf("%d ", i);}}printf("\ncount = %d\n", count);return 0;
}

m=a*b;

16=2*8=4*4

a和b中一定有一个数字是<=sqrt(m)

#include<math.h>
//sqrt是数学库函数
//开平方
//头文件math.h
int main()
{int i = 0;int count = 0;for ( i = 101; i <=200; i+=2){//判断i是否为素数//判断7.就拿2~i-1之间的数字去试除iint flag = 1;//flag是1,表示是素数int j = 0;for ( j = 2; j <= sqrt(i); j++){if (i % j == 0){flag = 0;break;}}if (flag==1){count++;printf("%d ", i);}}printf("\ncount = %d\n", count);return 0;
}

//1. 写一个函数可以判断一个数是不是素数。//是素数返回1
//不是素数返回0
int is_prime(int n)
{int j = 0;for ( j = 2; j <= sqrt(n); j++){if (n % j == 0){return 0;}}return 1;
}
int main()
{int i = 0;int count = 0;for (i = 101; i <= 200; i += 2){if (is_prime(i)){printf("%d ", i);count++;}}printf("\ncount = %d\n", count);return 0;
}
2. 一个函数判断一年是不是闰年。

int main()
{int i = 0;for (i = 1000; i <= 2000; i++){if ((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0)){printf("%d ", i);}}return 0;
}
//一个函数判断一年是不是闰年。//是闰年返回1,非闰年返回0
int is_leap_year(int y)
{if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0))return 1;elsereturn 0;
}
int main()
{int i = 0;for (i = 1000; i <= 2000; i++){//判断i是不是闰年if (is_leap_year(i)){printf("%d ", i);}}return 0;
}

3.写一个函数,实现一个整形有序数组的二分查找。
//写一个函数,实现一个整形有序数组的二分查找。
int binary_search(int arr[],int k,int sz)
{int left = 0;int right = sz-1;while (left<=right){int mid = left + (right - left) / 2;if (arr[mid] < k){left = mid + 1;}else if (arr[mid] > k){right = mid - 1;}else{return mid;//找到了返回下标}}return -1;//找不到
}
int main()
{int arr[] = { 1,2,3,4,5,6,7,8,9,10 };int k = 7;int sz = sizeof(arr) / sizeof(arr[0]);//找到了,返回下标//找不到,返回-1int ret = binary_search(arr,k,sz);if (ret==-1){printf("找不到\n");}else{printf("找到了,下标是:%d\n", ret);}return 0;
}

形式参数和实际参数的名字可以相同,也可以不同。

数组传参实际上传递的是数组首元素的地址,而不是整个数组,所以在函数内部计算一个函数参数部分的数组的元素个数的不靠谱的。

int binary_search(int arr[],int k,int sz)//形参arr看上去是数组,本质是指针变量。

bool 表示真,假

是1个字节。true - 1 false - 0。

也可以直接返回0 1。

bool类型的头文件stdbool.h。

4. 写一个函数,每调用一次这个函数,使得num每次增加1 。
//.  写一个函数,每调用一次这个函数,使得num每次增加1 。void Add(int* p)
{(*p)++;
}
int main()
{int num = 0;Add(&num);printf("%d\n", num);Add(&num);printf("%d\n", num);Add(&num);printf("%d\n", num);return 0;
}
int Add(int n)
{return n + 1;
}
int main()
{int num = 0;num=Add(num);printf("%d\n", num);num=Add(num);printf("%d\n", num);num=Add(num);printf("%d\n", num);return 0;
}

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

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

相关文章

基于PHP花涧订购系统的设计与实现00332

摘 要 近年来&#xff0c;电子商务的快速发展引起了行业和学术界的高度关注。花涧订购系统旨在为用户提供一个简单、高效、便捷的花卉购物体验&#xff0c;它不仅要求用户清晰地查看所需信息&#xff0c;而且还要求界面设计精美&#xff0c;使得功能与页面完美融合&#xff0c;…

AI程序员还是代替不了程序员,震撼硅谷的Devin-ai程序员,再度震撼硅谷——但这次是被打假

文章目录 主要疑点包括但不限于&#xff1a;35年从业者逐帧验证 AI程序员还是代替不了程序员&#xff0c;震撼硅谷的Devin-ai程序员&#xff0c;再度震撼硅谷——但这次是被打假 一位油管程序员博主Internet of Bugs对Devin发布的视频进行了逐帧分析&#xff0c;逐一举证说明了…

【C语言】register 关键字

在C语言中&#xff0c;register关键字用于提示编译器将变量尽量存储在CPU的寄存器中&#xff0c;而不是在内存中。这是为了提高访问速度&#xff0c;因为寄存器的访问速度比内存快得多。使用register关键字的变量通常是频繁使用的局部变量。 基本用法 void example() {regist…

猫头虎分享[可灵AI」官方推荐的驯服指南-V1.0

猫头虎分享[可灵AI」官方推荐的驯服指南-V1.0 猫头虎是谁&#xff1f; 大家好&#xff0c;我是 猫头虎&#xff0c;别名猫头虎博主&#xff0c;擅长的技术领域包括云原生、前端、后端、运维和AI。我的博客主要分享技术教程、bug解决思路、开发工具教程、前沿科技资讯、产品评…

Git 基础-创建版本库 git init、添加到暂存区git add、查看状态git status、查看改动git diff

目录 1.创建版本库 git init 1.创建版本库 git init 在目录中创建新的 Git 仓库。 你可以在任何时候、任何目录中这么做&#xff0c;完全是本地化的。 在目录中执行 git init&#xff0c;就可以创建一个 Git 仓库了。 注意: 没事不要手动修改 .git 目录里面的文件&#xff0c;不…

安卓微商大师V3.4.0/高级版一键群发僵尸粉检测

一款高效获取客源&#xff0c;备受好评的微商工具&#xff0c;资源丰富&#xff0c;秒速获得客源&#xff0c;大量群客源&#xff0c;都是散客&#xff0c;携手创业&#xff0c;是做微商生意的首选工具。打开即是黑钻高级会员 赶快体验吧 很强大 链接&#xff1a;https://pan.…

Java程序设计课后习题(答案版) 期末复习

第一章 Java语言概述 一、选择题 下面哪种类型的文件可以在Java虚拟机中运行?( A ) A. class B. Java C. jre D. exe 如果JDK 的安装路径为“d:\jdk”&#xff0c;若想在命令窗口中任何当前路径下&#xff0c;都可以直接使用javac和java命令&#xff0c;需要将环境变量path设…

携手共筑爱的桥梁:引导接纳自闭症同学

在孩子的班级中&#xff0c;当自闭症儿童成为我们共同的一员时&#xff0c;作为老师和家长&#xff0c;我们肩负着特别的责任——引导孩子们以开放的心态接纳、善待并关爱他们。 首先&#xff0c;我们要以身作则&#xff0c;展现接纳与尊重。无论是老师还是家长&#xff0c;都…

笔记:Git学习之应用场景和使用经验

目标&#xff1a;整理Git工具的应用场景和使用经验 一、开发环境 Git是代码版本控制工具&#xff1b;Github是代码托管平台。 工具组合&#xff1a;VSCode Git 需要安装的软件&#xff1a;vscode、Git 其中vscode需要安装的插件&#xff1a;GitLens、Git History 二、应用…

仓库货物管理系统

摘 要 随着信息技术的迅猛发展&#xff0c;大数据已经成为推动各行各业变革的重要力量。特别是在物流仓储领域&#xff0c;大数据技术的应用不仅能够显著提升仓库货物管理的效率&#xff0c;还能够优化库存管理、减少成本、提高客户满意度。因此&#xff0c;基于大数据的仓库货…

webstorm 高效查看不同分支差异 摒弃你的git diff手动操作

背景 每次代码冲突或者版本发生异常时&#xff0c;排查不同版本时就是一个头大的问题&#xff0c;头大的点在于用 vscode 的 git diff 一点点地排查和比较&#xff0c;耗时耗力&#xff0c;版面展不开&#xff0c;commit 差异看不出来&#xff0c;每个页面的代码不同也不能快速…

2007-2023年36家商业银行绿色信贷、期末贷款总额、银行总资产等相关指标数据(2023年无缺失)

2007-2023年36家商业银行绿色信贷数据&#xff08;2023年无缺失&#xff09; 1.时间&#xff1a;2007-2023年&#xff0c;2023年无缺失 2.来源&#xff1a;银行年报和社会责任报告 3.指标:绿色信贷余额、期末贷款总额、绿色信贷比率、总资产收益率、流动性比率、拨备覆盖率、…

2002-2022年各省老年人口抚养比(人口抽样调查)数据

2002-2022年各省老年人口抚养比(人口抽样调查)数据 1、时间&#xff1a;2002-2022年 2、指标&#xff1a;老年人口抚养比 3、来源&#xff1a;国家统计局、统计年鉴 4、范围&#xff1a;31省&#xff0c; 5、缺失情况&#xff1a;无缺失&#xff0c;其中2010年的值取2009、…

华为 eNSP 模拟器 配置RIP实例 动态路由协议

1 实验拓扑 2 配置路由器 #R1 Huawei>sys [Huawei]sysname R1 [R1]interface GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0]ip address 192.168.1.1 255.255.255.0 [R1-GigabitEthernet0/0/0]qu [R1]rip [R1-rip-1]network 192.168.1.0 [R1-rip-1]version 2 [R1-rip-…

ffmpeg在powershell和ubuntu终端下的不同格式

在win10下的powershell中&#xff0c;如果想运行一个exe文件&#xff0c;就不能再像cmd命令行一样用名字来直接运行了&#xff0c;否则会提示格式不对。 正确的做法是&#xff1a; . \ffmpeg.exe -re -i video-test.mpr -rtsp_transport tcp -vcodec h264 -f rtsp rtsp://您的…

MySQL 9.0 发布了!

从昨晚开始&#xff0c;在DBA群里大家就在讨论MySQL 9.0发布的事情&#xff0c;但是Release Note和官方文档都没有更新&#xff0c;所以今天早上一上班就赶紧瞅了下具体更新了哪些内容&#xff1f; 整体看来&#xff0c;基本没什么创新。下面是9.0新增或废弃的一些特性。 &…

“不喝鸡汤 不诉离殇”华火电燃灶用实力引领烹饪灶具发展

在这个快节奏的时代&#xff0c;我们常常被各种厨房电器的鸡汤所包围&#xff0c;并悄悄的告诉我们厨房生活是美好与温暖的&#xff0c;但面对现实中的挑战与困难时&#xff0c;常常表现出选择性失明&#xff1b;那些隐藏在传统厨房烹饪环境下的危机&#xff0c;就像是慢性的毒…

Java AI+若依框架项目开发 RuoYi-Vue(SpringBoot + Vue)

1.诺依的版本 本次选择RuoYI-Vue框架进行讲解 官网地址&#xff1a;RuoYi-Vue: &#x1f389; 基于SpringBoot&#xff0c;Spring Security&#xff0c;JWT&#xff0c;Vue & Element 的前后端分离权限管理系统&#xff0c;同时提供了 Vue3 的版本 (gitee.com) 2.搭建后端…

vue中使用 json编辑器

<template><div class"stringTest"><vue-json-editorv-model"vstringData" //编辑器中的内容:showBtns"false" // 保存按钮mode"code"lang"zh":expanded-on-start"true"json-change&quo…

5.Android逆向协议-初识HTTP和HTTPS协议

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a;微尘网校 上一个内容&#xff1a;4.Android逆向协议-详解二次打包失败解决方案 从现在开始正式进入协议分析了。 首先客户端与服务端之…