自定义函数(C++)

前言

本片文章稍微有亿点复杂,敬请谅解......

了解

比如:榨汁要用榨汁机,那么榨汁机就是一种方便榨汁的函数

函数种类

系统函数:

如:

swap------交换

abs------绝对值

size------位数

pow------次方

sqrt------根号

自定义函数:

这里不列出了,下面会为大家讲解......

题目

就拿A+B Problem

题目详见:A+B Problem

那么,走寻常路的做法:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a,b;
    cin>>a>>b;
    cout<<a+b<<endl;
    return 0;
}

自定义函数的做法,会在代码后面讲解:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int c(int a,int b){
	return a+b;
}
int main()
{
    int a,b;
    cin>>a>>b;
    cout<<c(a,b)<<endl;
    return 0;
}

可能有些苦涩难懂,现在给各位讲解:

1~2行就不说了......

函数如何写

基本类型:

void 无返回值

int -2147483648~2147483647

long long,double,float,bool,char,string等都和原来的一样

结构如下:

cpp 复制代码
函数类型 函数名称(参数类型 参数,参数类型 参数){
    执行指令;
}

可能没有参数,参数可能有多个,都有逗号隔开

正式题目

判断素数

题目描述:

请输入一个数字,请判断此数字是否为素数

输出格式

1

1不是素数

317

317是素数

提示:1<2,所以不是

317只能整除1和317,所以是

题解如下

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
bool sushu(int x){
	if(x<2){
		return false;
	}
	for(int i=2;i<x;i++){
		if(x%i==0){
			return false;
		}
	}
	return true;
} 
int main()
{
    int n;
    cin>>n;
    if(sushu(n)){
    	cout<<n<<"是素数"<<endl;
	}else{
		cout<<n<<"不是素数"<<endl;
	}
    return 0;
}

意思如下

首先,判断是不是就要用bool类型,是返回true,不是返回false

先判断特殊例子:小于2的,直接返回false

再判断是否有因子,如果有的话,直接返回false

但是要从2开始,道x-1结束,否则每一个自然数都返回false

如果从2~x-1都不能被x整除的话,就不会结束,就在循环后面返回true

调用方法(所有函数)

如果没有返回值的,如:shuchu()

如果拥有返回值的,如sushu(对要使用的变量)

bool类型如何判断

不用双等于号,直接写函数名称(对要使用的变量)

如:if(panduan(a,b))

函数有n个参数,使用时也要有n个变量

结语

感谢大家的耐心阅读,麻烦各位点个💖号吧!!!!!

制作不易,感谢支持!!!!!

也要感谢CNDN的大力支持!!!!!

(共计1234个字)

相关推荐
恒者走天下1 小时前
秋招落定,拿到满意的offer,怎么提高自己实际的开发能力,更好的融入团队
c++
做怪小疯子1 小时前
LeetCode 热题 100——矩阵——旋转图像
算法·leetcode·矩阵
努力学习的小廉1 小时前
我爱学算法之—— BFS之最短路径问题
算法·宽度优先
python零基础入门小白2 小时前
【万字长文】大模型应用开发:意图路由与查询重写设计模式(从入门到精通)
java·开发语言·设计模式·语言模型·架构·大模型应用开发·大模型学习
天若有情6732 小时前
【c++】手撸C++ Promise:从零实现通用异步回调组件,支持链式调用+异常安全
开发语言·前端·javascript·c++·promise
无心水2 小时前
【Python实战进阶】1、Python高手养成指南:四阶段突破法从入门到架构师
开发语言·python·django·matplotlib·gil·python实战进阶·python工程化实战进阶
高山上有一只小老虎2 小时前
构造A+B
java·算法
学困昇2 小时前
C++中的异常
android·java·c++
木头左2 小时前
缺失值插补策略比较线性回归vs.相邻填充在LSTM输入层的性能差异分析
算法·线性回归·lstm
sin_hielo2 小时前
leetcode 2435
数据结构·算法·leetcode