目录
1.函数定义和使用函数
函数的定义
在C++中,函数的定义是指创建一个函数的具体实现,包括函数名、返回类型、参数列表以及函数体。函数的定义必须在一个源文件中,而不能在声明中进行。格式:
返回值类型 函数名{
语句;
return 返回值;
}
函数的声明
通常,函数的声明放在程序的开头或头文件中,以便在函数调用之前告诉编译器该函数的存在。函数声明不包括函数体。
2.函数的参数
函数的参数是函数定义中非常重要的一部分,它们为函数提供了执行所需的具体数据或值。在编程中,函数通常被设计为可以接收一定数量和类型的参数,这些参数在函数体内被用来执行特定的操作或计算。
以下是关于函数参数的一些关键点:
参数定义:在函数定义时,我们指定了函数的参数列表。这些参数在函数被调用时接收实际的值。
参数类型:不同的编程语言支持不同类型的参数,如整数、浮点数、字符串、数组、对象等。在定义函数时,我们需要明确每个参数的类型,以便在函数体内正确地处理它们。
参数传递:当函数被调用时,实参被传递给函数定义中的形参。这种传递可以是按值传递或按引用传递。
参数的作用域:函数参数的作用域通常局限于函数体内。这意味着在函数外部无法直接访问或修改这些参数的值。
3.常用的函数
1.max(x,y) 找最大值
2.min(x,y) 找最小值
3.swap(x,y) 互换变量值
4.sort(begin,end,cmp) 排序
4.函数的返回值
函数的返回值是函数执行完毕后返回给调用者的结果或数据。在编程中,函数经常需要返回一些信息,以便调用者可以根据这些信息继续执行后续的操作或做出决策。
关于函数返回值的关键点:
返回值的类型:函数的返回值可以有各种类型,包括int、float、char、数组、对象、bool等。在定义函数时,我们通常会指定返回值的类型,以便调用者知道应该如何处理这个返回值。
返回语句:在函数体内,使用return来指定函数的返回值。当执行到返回语句时,函数会立即结束,并将返回语句指定的值返回给调用者。
无返回值:有些函数可能不需要返回任何值,它们的任务可能是执行一些操作。在这种情况下,函数可以没有返回值,或者返回一个特殊的值来表示没有返回值。
返回值的处理:调用者可以通过接收函数的返回值来进一步处理或利用这个结果。
5.结构体的格式
struct 结构体名{
数据类型1 变量名1;
数据类型2 变量名2;
……
};
该笔记 厚米本米^_^虎 整理
6.结构体变量的初始化
struct stu{
int id;
string name;
double score;
}
stu a={1,"yaya",98}
7.编程题目
1.C++
描述
输入一个长方形的长和宽,输出该长方形的周长和面积。
要求:定义一个长方形结构体rect,用于保存长方形的长、宽、周长和面积。输入描述
一行两个小数l、w,使用空格隔开,表示长方形的长和宽,0<w<l≤1000
输出描述
一行两个小数,使用空格隔开,表示长方形的周长和面积,保留两位小数。
样例输入 1
4.8 6.3
样例输出 1
22.20 30.24提示:保留一位小数
#include <bits/stdc++.h>
using namespace std;
struct rect { //创建结构体rect
double l;
double w;
double p;
double a;
};
int main() {
rect rect1;
cin>>rect1.l>>rect1.w;
rect1.p=(rect1.l + rect1.w)*2; //S=2(a+b)长方形周长
rect1.a=rect1.l*rect1.w; //S=ab长方形面积
cout<<fixed<<setprecision(2)<<rect1.p<<" "<<rect1.a<<endl;
return 0;
}
2.C++
描述
现有 n 名学生参加了期末考试。已知每名学生的信息包括:学号、语文、数学成绩( 0≤语文、数学成绩≤100 )。
请将学生按总分(语文+数学)从高到低排序。输入描述
第1行一个正整数n,表示学生的数量。(0<n≤100)
接下来n行,每行3个整数,用空格隔开,分别表示学号、语文、数学成绩。保证每个学生的总分都不相同。输出描述
排序后的结果。每行2个整数,用空格隔开,分别表示学号和总分。
样例输入 1
5
1 78 100
2 90 98
3 60 80
4 66 90
5 90 60
样例输出 1
2 188
1 178
4 156
5 150
3 140#include <bits/stdc++.h>
using namespace std;
struct stu{
int id;
int yuwen;
int shuxue;
int z;
};
bool cmp(stu a,stu b){
return a.z>b.z;
}
int main(){
int n;
cin>>n;
stu sss[n];
for (int i=0;i<n;i++) {
cin>>sss[i].id>>sss[i].yuwen>>sss[i].shuxue;
sss[i].z=sss[i].yuwen+sss[i].shuxue;
}
sort(sss,sss+n,cmp);
for (int i=0;i<n;i++) {
cout<<sss[i].id<<" "<<sss[i].z<<endl;
}
return 0;
}
关注!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!我!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!厚米本米^_^虎!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
mochensage!!!!!!!!!!!!!!!!!!!!!!!!!!!

被折叠的 条评论
为什么被折叠?



