2013年苏州大学837复试机试C/C++

news2025/1/10 6:16:55

2013年苏州大学复试机试

第一题

题目

假设有一堆数字(小于100个)需要对其做如下处理:

  1. 求平均数
  2. 求标准差
  3. 求方差

可用函数实现也可以不用

代码

#include <iostream>
#include <sstream> //字符串流
#include <cmath> //数学运算
using namespace std;
void Input_Function();
void Mean_Function();
void Standard_deviation();

const int MAX_SIZE = 100;
int Arr[MAX_SIZE];
int Arr_Sum = 0;
double Average = 0;
int Arr_size = 0;

int main() {

    //输入处理
    Input_Function();
    //求平均值
    Mean_Function();
    //求标准差和方差
    Standard_deviation();

    return 0;
}

void Input_Function(){

    int Temp = 0;
    Arr_size = 0;
    cout << "请输入数字(以空格分隔):"<< endl;

    //读取整行输入
    string input;
    getline(cin,input);

    //使用字符串串流解析整行输入
    stringstream ss(input);

    //输入数组操作
    while (ss >> Temp){
        if (Arr_size < MAX_SIZE){
            Arr[Arr_size] = Temp;
            Arr_size++;
        } else{
            cout << "数组已满,无法添加更多元素。" << endl;
            break;
        }
    }

    //打印数组并求和
    cout << "输入数为:";
    for (int i = 0; i < Arr_size; ++i) {
        Arr_Sum += Arr[i];
        cout << Arr[i] << " ";
    }
    cout << endl;

}

void Mean_Function(){
    if (Arr_size > 0) {
        Average = static_cast<double>(Arr_Sum) / Arr_size;
        cout << "平均值为:" << Average << endl;
    } else{
        cout << "数组为空,无法计算平均值。" << endl;
    }
}

void Standard_deviation(){
    if (Arr_size > 1){
        double variance = 0;
        for (int i = 0; i < Arr_size; ++i) {
            variance += pow(Arr[i] - Average,2);
        }
        variance /= (Arr_size - 1);

        double std_deviation = sqrt(variance);
        cout << "方差为:" << variance << endl;
        cout << "标准差为:" << std_deviation << endl;
    } else{
        cout << "数组元素不足以计算方差和标准差。" << endl;
    }
}

结果

请添加图片描述

第二题

题目

假设有一个4*3的矩阵,元素自定:

  1. 求各一元各行元素的平均值
  2. 求该矩阵转置后的矩阵
  3. 若一个3乘4的矩阵与其相乘求新矩阵

必须用函数实现

代码

#include <iostream>
using namespace std;
void Inpu_Function();
void Tran_Arr();
void New_Arr();
void Average_lacedelmenets();


int Arr_A[4][3];
int Tran_Arr_A[3][4];
int Arr_B[3][4];
int Arr_AB[4][4];


int main()
{
    //输入4*3矩阵A的元素
    Inpu_Function();

    // 求各一元各行元素的平均值
    Average_lacedelmenets();

    //矩阵A的转置
    Tran_Arr();

    //一个3乘4的矩阵与其相乘的新矩阵
    New_Arr();


    system("pause");
    return 0;
}

void Inpu_Function()
{
    cout << "请输入4*3矩阵A的元素:" << endl;

    //输入矩阵元素:
    for (int i = 0; i < 4; ++i) {
        for (int j = 0; j < 3; ++j) {
            cout << "请输入第 " << (i + 1) << " 行,第 " << (j + 1) << " 列的元素:";
            cin >> Arr_A[i][j];
        }
    }

    //输出矩阵
    cout << "输入的矩阵为:" << endl;
    for (int i = 0; i < 4; ++i) {
        for (int j = 0; j < 3; ++j) {
            cout << Arr_A[i][j] << " ";
        }
        cout << endl;
    }
}

void Average_lacedelmenets() {
    cout << "各行元素的平均值为:" << endl;

    for (int i = 0; i < 4; ++i) {
        int rowSum = 0;
        for (int j = 0; j < 3; ++j) {
            rowSum += Arr_A[i][j];
        }
        double average = static_cast<double>(rowSum) / 3;
        cout << "第 " << (i + 1) << " 行元素的平均值为:" << average << endl;
    }
}

void Tran_Arr(){

    for (int i = 0; i < 4; ++i) {
        for (int j = 0; j < 3; ++j) {
            Tran_Arr_A[j][i] = Arr_A[i][j];
        }
    }

    //输出矩阵A的转置
    cout << "矩阵A的转置为:" << endl;
    for (int i = 0; i < 3; ++i) {
        for (int j = 0; j < 4; ++j) {
            cout <<  Tran_Arr_A[i][j] << " ";
        }
        cout << endl;
    }
}


void New_Arr(){
    //输入矩阵B
    cout << "请输入3*4矩阵B的元素:" << endl;
    for (int i = 0; i < 3; ++i) {
        for (int j = 0; j < 4; ++j) {
            cout << "请输入第 " << (i + 1) << " 行,第 " << (j + 1) << " 列的元素:";
            cin >> Arr_B[i][j];
        }
    }

    //计算矩阵A和B的乘积
    for (int i = 0; i < 4; ++i) {
        for (int j = 0; j < 4; ++j) {
            Arr_AB[i][j] = 0;
            for (int k = 0; k < 3; ++k) {
                Arr_AB[i][j] += Arr_A[i][k] * Arr_B[k][j];
            }
        }
    }

    // 输出矩阵乘积
    cout << "矩阵 A 和 B 的乘积为:" << endl;
    for (int i = 0; i < 4; ++i) {
        for (int j = 0; j < 4; ++j) {
            cout << Arr_AB[i][j] << " ";
        }
        cout << endl;
    }

}

结果

请添加图片描述

请添加图片描述

最后

此代码为个人编写,题目来自互联网,使用平台为Clion,C++17标准。

由于博主才疏学浅,如有错误请多多指正,如有更好解法请多多交流!

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

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

相关文章

LabVIEW振动信号分析

LabVIEW振动信号分析 介绍如何使用LabVIEW软件实现希尔伯特-黄变换&#xff08;Hilbert-Huang Transform, HHT&#xff09;&#xff0c;并将其应用于振动信号分析。HHT是一种用于分析非线性、非平稳信号的强大工具&#xff0c;特别适用于旋转机械等复杂系统的振动分析。开发了…

【linux】Debian防火墙

Debian系统默认没有安装防火墙&#xff0c;但用户可以根据需要自行选择并安装一个防火墙以增强系统安全性。 一、查看Debian 桌面系统的防火墙是否关闭 在Debian及其他基于Linux的桌面系统中&#xff0c;防火墙功能通常是由iptables或nftables规则集控制的&#xff0c;而ufw&…

《WebKit技术内幕》学习之十五(3): Web前端之未来

3 Web应用和Web运行环境 3.1 Web应用 HTML5提供了强大的能力&#xff0c;而不是支持Web网页这么简单。就目前而言&#xff0c;它已经初步提供了支持Web网页向Web应用方向发展的能力。相对于本地应用&#xff08;Native Application&#xff09;&#xff0c;Web前端领域也能够…

如何在yolov8中验证时计算FPS

ultralytics-main/ultralytics/engine/validator.py文件下&#xff0c;第200行左右&#xff0c;添加如下代码 LOGGER.info(fFPS:{(1000 / sum(self.speed.values())):.2f}) speed.values()是一个字典&#xff0c;包括preprocess,inference,loss,postprocess的时间&#xff0c;所…

SpringSecurity(15)——OAuth2密码模式

工作流程 将用户和密码传过去&#xff0c;直接获取access_token&#xff0c;用户同意授权动作是在第三方应用上完成&#xff0c;而不是在认证服务器&#xff0c;第三方应用申请令牌时&#xff0c;直接带用户名和密码去向认证服务器申请令牌。这种方式认证服务器无法判断用户是…

【python自动化系列01】Openpyxl,操作Excel文件的利器

如果要批量操作Excel文件&#xff0c;使用最广泛的是 Openpyxl 库。这个库集成了Excel的所有操作&#xff0c;从创建Excel、保存Excel到设置Excel单元格字体、颜色都可以实现。下面开始学习 Openpyxl 的简单使用吧&#xff01;&#xff01;&#xff01; 安装 openpyxl 库 ope…

ensp winpcap无法安装

安装ensp的依赖软件winpcap无法安装 发现提示已有最新版本、找网上都是修改文件后缀名&#xff0c;测试后发现根本不行&#xff0c;有点扯 npcap是wireshark安装带的&#xff0c;通过卸载wireshark安装 ensp安装顺序应该先安装winpcap->wireshark->virtualbox->ens…

高中数学常识

一、大小关系 |x| > |sinx| 理由&#xff1a; 很明显&#xff0c;在圆内&#xff0c;弧长x>垂线sinx 3x、2x 、 1 2 \frac{1}{2} 21​x 理由&#xff1a; log 1 2 _\frac{1}{2} 21​​x、log 2 _2 2​x、 log 3 _3 3​x 二、(xy)? 的求法 利用二项式定理 三、平…

ThreadLocal内存泄漏示例

ThreadLocal内存泄漏是老生常谈的问题了&#xff0c;原理就不多说了&#xff0c;这里只简单回顾下 Thread类有个属性threadLocals&#xff0c;其实就是个map。 这个map的结构如下&#xff0c;key是ThreadLocal对象&#xff0c;是一个弱引用&#xff0c;value是调用threadLocal…

cmake工具的安装

1、简介 CMake 是一个开源的、跨平台的自动化建构系统。它用配置文件控制编译过程的方式和Unix的make相似&#xff0c;只是CMake并不依赖特定的编译器。CMake并不直接建构出最终的软件&#xff0c;而是产生标准的建构文件&#xff08;如 Unix 的 Makefile 或 Windows Visual C …

ZYNQ AC7020C的“点LED”实验

一、创建 Vivado 工程 1、启动 Vivado 2、在 Vivado 开发环境里点击“Create New Project”&#xff0c;创建一个新的工程 3、弹出一个建立新工程的向导&#xff0c;点击“Next” 4、在弹出的对话框中输入工程名和工程存放的目录。需要注意工程路径“Project location”不能有…

安科瑞宿舍安全用电监测:科技保障,安全无忧

在当今社会&#xff0c;电力已成为我们日常生活中不可或缺的一部分。然而&#xff0c;不正确的用电方式或管理不善可能会引发火灾等安全事故&#xff0c;给学生带来生命财产威胁。为了解决这一问题&#xff0c;安科瑞宿舍安全用电监测系统应运而生&#xff0c;为学生的用电安全…

[每日一题] 01.27 - 斐波那契数列

文章目录 打分斐波那契数列 打分 n int(input()) lis list(map(int,input().split())) a sum(lis) - min(lis) - max(lis) print(round(a / (n - 2),2))斐波那契数列 n int(input()) res [] for i in range(n):res.append(int(input()))Max max(res) lis [1,1] for i in…

高精度加减乘除算法模板

高精度加减乘除算法模板 高精度加法算法模板模版题 高精度减法算法模板模版题 高精度乘法算法模板模版题 高精度除法算法模板模版题 高精度加法算法模板 首先&#xff0c;我们要知道高精度算法是C才用的&#xff0c;Java中是不需要高精度算法的 高精度加法&#xff1a; 两个大的…

K8S搭建(centos)二、服务器设置

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

Spring MVC 请求流程

SpringMVC 请求流程 一、DispatcherServlet 是一个 Servlet二、Spring MVC 的完整请求流程 Spring MVC 框架是基于 Servlet 技术的。以请求为驱动&#xff0c;围绕 Servlet 设计的。Spring MVC 处理用户请求与访问一个 Servlet 是类似的&#xff0c;请求发送给 Servlet&#xf…

数据结构.线性表

1.静态分配 #include<iostream> using namespace std; const int N 10; typedef struct {int data[N];int length;}SqList; void InitList(SqList &L) {for (int i 0; i < N; i){L.data[i] 0;}L.length 0; }int main() {SqList L;InitList(L);return 0; }2.动…

实体关系抽取与属性补全的技术浅析

目录 前言1. 实体关系抽取2 实体关系抽取的方法2.1 基于模板的方法2.2 基于监督学习的关系抽取2.3 基于深度学习的关系抽取2.4 基于预训练语言模型的关系抽取 3 属性补全3.1 属性补全任务简介3.1 抽取式属性补全3.2 生成式属性补全 4 未来发展趋势结语 前言 在信息爆炸时代&am…

带延迟的随机逼近方案(Stochastic approximation schemes):在网络和机器学习中的应用

1. 并行队列系统中的动态定价Dynamic pricing 1.1 系统的表述 一个含有并行队列的动态定价系统&#xff0c;该系统中对于每个队列有一个入口收费(entry charge) &#xff0c;且系统运行的目标是保持队列长度接近于某个理想的配置。 这里是这个系统的几个关键假设&#xff1a;…

Spring boot + Azure OpenAI 服务 1.使用 GPT-35-Turbo

Azure OpenAI 服务使用 GPT-35-Turbo 先决条件 maven 注意 beta.6 版本 <dependency><groupId>com.azure</groupId><artifactId>azure-ai-openai</artifactId><version>1.0.0-beta.6</version></dependency>问答工具类 pack…