带默认形参值的函数 PTA C++ 练习

带默认形参值的函数

设计一个带默认形参值的函数add,该函数有三个参数,可以实现三个整数类型的参数相加的操作,函数返回相加的结果。默认形参值从右至左分别是30、20。

裁判测试程序样例:

#include <iostream>
using namespace std;

/* 请在这里填写答案 */

int main()
{
    int a, b, c;

    cin >> a >> b >> c;

    cout << add(a) << endl;
    cout << add(a, b) << endl;
    cout << add(a, b, c) << endl;

    return 0;
}

输入样例:

1 2 3

输出样例:

51
33
6

题解思路:

思路很简单, 就一行代码, 就不说了, 懒得思考的直接提交.

参考代码:

int add(int x1,int x2=20,int x3=30){    return x1+x2+x3;}

原文地址:https://www.cnblogs.com/swyw/p/12395049.html

时间: 2024-10-10 23:40:13

带默认形参值的函数 PTA C++ 练习的相关文章

C++函数带默认值的几种情形

1. 默认参数的规则 默认值定义 C++支持函数参数带默认值.这里所谓的默认值,指的是在调用函数时,可以不指定某些参数,编译器会自动把默认值传递到函数调用中. 默认值位置 指定默认值的参数必须位于形参列表最右端,从右往左.否则会出现二义性,编译器无法处理. 默认值设置 默认值可以在函数声明或函数定义中设置,只要保证不出现参数重定义即可. 2.默认参数示例 在函数声明中设置默认值 这是最常见的一种情形.主要有以下两种声明方式: 声明中给参数赋默认值 声明中用类型指定默认值 float area(f

C++——带默认参数值的函数

函数在声明时可以预先给出默认的形参值,调用时如给出实参,则采用实参值,否则采用预先给出的默认参数值. int add(int x = 5,int y = 6) { return x + y;} int main() { add(10,20);//10+20 add(10);//10+6 add();//5 + 6 } 默认参数值的说明次序 有默认参数的形参必须在形参列表的最后,也就是说默认参数值的右面不能有无默认值的参数,因为调用时实参与形参的结合是从左到右的顺序. int add(int x,

函数基础三 位置形参默认形参可变形参

细分:1.位置参数:1.1位置形参:在定义阶段,按照从左到右的顺序依次定义的形参称为位置形参特点:但凡是按照位置定义的形参必须被传值 多一个不行少一个也不行def func(x,y,z) print(x,y,z)func(1,2)func(1,2,3)func(1,2,3,4) 1.2位置实参:在调用阶段,按照从左到有的顺序依次传入的值称为位置实参特点:与形参一一对应def func(x,y,z) print(x,y,z)func(2,1,3) 2.关键字实参:在调用阶段 按key=value的

默认形参在函数定义阶段就已经被赋值,在调用时就可以不用再次赋值了。

'''默认形参 在函数定义阶段,就已经被赋值了. def func(x,y=10): if x > y: return x return y ms=func(2) print(ms) 特点: 在函数定义阶段就已经被赋值,意味着在调用时可以不用为其再次赋值了. 注意注意注意!!!: 1.位置形参必须放在默认形参的左边. 2.默认形参的值只在定义阶段赋值一次,也就是说默认参数的值 在函数定义阶段就已经固定了. 案例如下: m=15 def foo(x=m): print(x) m=200 foo()

38 py改变函数参数的值关键字参数和参数默认值函数中可变参数将序列中的元素值作为函数对应的参数值传

第五课:改变函数参数的值 一个python函数可以有任意多个参数,在一个函数的外部来定义变量,然后把变量作为参数传入到函数内,并且在函数的内部来修改函数的参数值,函数结束之后,这些变量的值在如何变化呢? 给函数传递值有2种:1种是值传递,1种是引用传递 # 改变函数参数的值 # 值传递(数值.字符串.布尔 这些都是值传递) 在函数的内部修改变量值,不改变原参数定义的参数值,解释为: 这个在函数中不会改变原来定义(函数外部)的值 这是因为函数里面会有一个占的概念,外边的变量的值会复制给 占 里面,

实参和形参指针做函数参数时,如何改变main函数变量的值

//对输入的两个整数按大小顺序输出 代码如下: #include<iostream> using namespace std; int main() { void swap(int *p1,int *p2); int *pointer_1,*pointer_2,a,b; cin>>a>>b; pointer_1=&a; pointer_2=&b; if(a<b)swap(pointer_1,pointer_2); cout<<"

类模板参数带默认值

类模板参数可以带默认值吗?答案当然是肯定的.看过STL源码的人就知道,STL里面大量使用了模板技术. 有兴趣的可以去看看STL的源码,从中可以学到不少知识. 今天,我就写一个带默认值的类模板,如下: #pragma once template<typename T, typename T defValue = NULL> class CType { public: CType() :m_value(defValue) { } ~CType() { } BOOL IsNull() const {

python基础 带参数以及返回值的函数装饰器

1 #带参数以及返回值的函数装饰器,上一篇博客记录了无参数函数装饰器写法以及使用方案,当函数有参数以及返回值时需要将装饰器进行如下修稿 2 def timer(fun): 3 def deco(*args,**kwargs): #被装饰函数实际是执行deco,所以在此将被装饰函数参数进行传递 4 start_time = time.time() 5 res = fun(*args,**kwargs) #将被装饰函数的返回值接收 6 stop_time = time.time() 7 return

python--函数的返回值、函数参数的使用、名称空间与作用域、函数嵌套、函数对象

今天学习内容有函数的返回值.函数参数的使用.名称空间与作用域.函数嵌套. 下来我们一一查看. 函数的返回值 看几个栗子: def func(x): return x**2 y=func(10) print(y) def foo(): return None res=foo() print(res) def foo(): return{'a':1} res=foo() print(res['a']) def foo(): return {'a':1},1,'a',[1,2] res=foo() p