OJ刷题之《函数模板--求n个数之和》

来源:互联网 发布:versions for mac过期 编辑:程序博客网 时间:2024/05/20 19:31

 

题目描述

利用函数模板求4个数的和。
部分代码已给定如下,只需要提交缺失的代码。

#include <iostream>
using namespace std;
/*
 
补充缺少代码
*/
int main()
{
    double result;
    unsigned char c1,c2,c3,c4;
    cin>>c1>>c2>>c3>>c4;
    result = sum<unsigned char>(c1,c2,c3,c4);
    cout<<int(result)<<endl;

    int i1,i2,i3,i4;
    cin>>i1>>i2>>i3>>i4;
    result = sum<int>(i1,i2,i3,i4);
    cout<<result<<endl;

    double d1,d2,d3,d4;
    cin>>d1>>d2>>d3>>d4;
    result = sum<double>(d1,d2,d3,d4);
    cout<<result<<endl;

    return 0;
}

输入

第一行4个字符
第二行4个整数
第三行4个小数

输出

第一行4个字符ascii的和
第二行4个整数的和
第三行4个小数的和

样例输入

abcd

1 2 3 4

1.1 2.2 3.3 4.4

样例输出

138

10

11

 

 

代码如下:

#include <iostream>using namespace std;template <class T>T sum(T a,T b,T c,T d){    return a+b+c+d;}int main(){    double result;    unsigned char c1,c2,c3,c4;    cin>>c1>>c2>>c3>>c4;    result = sum<unsigned char>(c1,c2,c3,c4);    cout<<int(result)<<endl;    int i1,i2,i3,i4;    cin>>i1>>i2>>i3>>i4;    result = sum<int>(i1,i2,i3,i4);    cout<<result<<endl;    double d1,d2,d3,d4;    cin>>d1>>d2>>d3>>d4;    result = sum<double>(d1,d2,d3,d4);    cout<<result<<endl;    return 0;}


运行结果:

 

一直以为函数模板就只是书上的一个例子,老师在这里也没多讲,也就没在意,,,结果这个项目就把我给坑了。。。

 

 

 

 

 

 

 

 

 

1 0