C语言经典例题-11

1.序列中整数去重

题目描述:

输入n个整数的序列,要求对这个序列进行去重操作。所谓去重,是指对这个序列中每个重复出现的整数,只保留该数第一次出现的位置,删除其余位置。

输入描述:

输入包含两行,第一行包含一个正整数n(1 ≤ n ≤ 1000),表示第二行序列中数字的个数;第二行包含n个整数(范围1~5000),用空格分隔。

输出描述:

输出为一行,按照输入的顺序输出去重之后的数字,用空格分隔。

输入:

5

10 12 93 12 75

输出:

10 12 93 75

参考代码:

#include <stdio.h>

int main()
{
    int n = 0;
    scanf("%d", &n);
    int i = 0;
    int j = 0;
    int arr[5000] = { 0 };
    for (i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }
    for (i = 0; i < n; i++)
    {
        for (j = i + 1; j < n; j++)
        {
            if (arr[i] == arr[j])
            {
                int k = 0;
                for (k = j; k < n - 1; k++)
                {
                    arr[k] = arr[k + 1];
                }
                n--;
                j--;
            }
        }
    }
    for (i = 0; i < n; i++)
    {
        printf("%d ", arr[i]);
    }
    return 0;
}
2.班级成绩输入输出

题目描述:

输入一个班级5个学生各5科成绩,输出5个学生各5科成绩及总分。

输入描述:

五行,每行输入一个学生各5科成绩(浮点数表示,范围0.0~100.0),用空格分隔。

输出描述:

五行,按照输入顺序每行输出一个学生的5科成绩及总分(小数点保留1位),用空格分隔。

输入:

98.5 96.0 100 99 88

60.5 77 88.5 99 60

80 80.5 89 91 92

93 94 95.5 96 97.5

100 98 88.5 88 78.5

输出:

98.5 96.0 100.0 99.0 88.0 481.5

60.5 77.0 88.5 99.0 60.0 385.0

80.0 80.5 89.0 91.0 92.0 432.5

93.0 94.0 95.5 96.0 97.5 476.0

100.0 98.0 88.5 88.0 78.5 453.0

参考代码:

#include <stdio.h>

int main()
{
    int i = 0;
    int j = 0;
    for (i = 0; i < 5; i++)
    {
        double sum = 0.0;
        double score = 0.0;
        for (j = 0; j < 5; j++)
        {
            scanf("%lf", &score);
            sum += score;
            printf("%.1lf ", score);
        }
        printf("%.1lf\n", sum);
    }
    return 0;
}
3.序列重组矩阵

题目描述:

KK现在得到一个包含nm个数的整数序列,现在他需要把这nm个数按顺序规划成一个n行m列的矩阵并输出,请你帮他完成这个任务。

输入描述:

一行,输入两个整数n和m,用空格分隔,第二行包含n*m个整数(范围-231~231-1)。(1≤n≤10,1≤m≤10)

输出描述:

输出规划后n行m列的矩阵,每个数的后面有一个空格。

输入:

2 3

1 2 3 4 5 6

输出:

1 2 3

4 5 6

参考代码:

#include <stdio.h>

int main()
{
    int n = 0;
    int m = 0;
    int num = 0;
    scanf("%d%d", &n, &m);
    int i = 0;
    int j = 0;
    for (i = 1; i <= n*m; i++)
    {
        scanf("%d", &num);
        printf("%d ", num);
        if (i % m == 0)
        {
            printf("\n");
        }
    }
    return 0;
}
4.矩阵相等判断

题目描述:

KK得到了两个n行m列的矩阵,他想知道两个矩阵是否相等,请你回答他。(当两个矩阵对应数组元素都相等时两个矩阵相等)。

输入描述:

第一行包含两个整数n和m,表示两个矩阵包含n行m列,用空格分隔。从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第一个矩阵中的元素。

从n+2行到2n+1,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第二个矩阵中的元素。

1 < n,m < 10

输出描述:

一行,如果两个矩阵相等输出"Yes"并换行,否则输出"No"并换行。

输入:

2 2

1 2

3 4

1 2

3 4

输出:

Yes

参考代码:

#include <stdio.h>

int main()
{
    int n = 0;
    int m = 0;
    scanf("%d%d", &n, &m);
    int i = 0;
    int j = 0;
    int arr1[10][10] = { 0 };
    int arr2[10][10] = { 0 };
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            scanf("%d", &arr1[i][j]);
        }
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            scanf("%d", &arr2[i][j]);
        }
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            if (arr1[i][j] != arr2[i][j])
            {
                printf("No\n");
                return 0;
            }
        }
    }
    printf("Yes\n");
    return 0;
}
5.矩阵转置

题目描述:

KK有一个矩阵,他想知道转置后的矩阵(将矩阵的行列互换得到的新矩阵称为转置矩阵),请编程帮他解答。

输入描述:

第一行包含两个整数n和m,表示一个矩阵包含n行m列,用空格分隔。 (1≤n≤10,1≤m≤10)从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第一个矩阵中的元素。

输出描述:

输出m行n列,为矩阵转置后的结果。每个数后面有一个空格。

输入:

2 3

1 2 3

4 5 6

输出:

1 4

2 5

3 6

参考代码:

#include <stdio.h>

int main()
{
    int n = 0;
    int m = 0;
    scanf("%d%d", &n, &m);
    int i = 0;
    int j = 0;
    int arr[10][10] = { 0 };
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            scanf("%d", &arr[i][j]);
        }
    }

    for (i = 0; i < m; i++)
    {
        for (j = 0; j < n; j++)
        {
            printf("%d ",arr[j][i] );
        }
        printf("\n");
    }
    return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS hsp制作与引用

1. HarmonyOS hsp制作与引用 1.1 介绍 HSP动态共享包&#xff08;模块&#xff09;,应用内HSP指的是专门为某一应用开发的HSP&#xff0c;只能被该应用内部其他HAP/HSP使用&#xff0c;用于应用内部代码、资源的共享。应用内HSP跟随其宿主应用的APP包一起发布&#xff0c;与该…

阶跃星辰:探索智能科技的星辰大海

引言 在当今快速发展的科技时代&#xff0c;人工智能已经成为推动社会进步的重要力量。阶跃星辰&#xff0c;正是在这一背景下诞生的。 阶跃星辰是一家专注于通用人工智能探索的公司&#xff0c;成立于2023年4月。该公司的创始团队由一群对人工智能充满热情和渴望的人组成&am…

【Python】异常、模块与包

目录 捕获异常 异常的传递 Python中的模块 模块的导入方式 as定义别名 自定义模块 Python包 第三方包 综合案例 当我们的程序遇到了BUG, 那么接下来有两种情况: ① 整个程序因为一个BUG停止运行 ② 对BUG进行提醒, 整个程序继续运行 但是在真实工作中, 我们肯定不能…

快解析搭建网站解决方案

在如今网络时代下&#xff0c;各行各业都需要有自己的门户网站。 企业搭建自己的门户网站&#xff0c;有着众多实际意义: 1.可以全面详细地介绍企业及企业产品&#xff0c;这是企业网站的一个最基本的功能。企业可以把任何想让大众知道的信息放到网站&#xff0c;当人们想知道…

http忽略ssl认证

我们在发请求时&#xff0c;会遇到需要ssl证书验证的报错&#xff0c;针对该错误以及所使用的不同的创建连接的方式&#xff0c;进行ssl证书忽略 忽略SSL证书的流程 简介&#xff1a;需要告诉client使用一个不同的TrustManager。TrustManager是一个检查给定的证书是否有效的类…

pytest参数化数据驱动(数据库/execl/yaml)

常见的数据驱动 数据结构&#xff1a; 列表、字典、json串 文件&#xff1a; txt、csv、excel 数据库&#xff1a; 数据库链接 数据库提取 参数化&#xff1a; pytest.mark.parametrize() pytest.fixture()…

vue3.0项目中运用vant的以及移动端的适配

文章目录 概要移动端的适配vant的引入开发以及打包过程中遇到的问题 概要 在Vue-Vben-Admin项目中运用vant-ui实现部分页面支持手机端h5页面的预览 移动端的适配 适配的原理 自适应 根据不同的设备的屏幕大小来自动调整尺寸&#xff0c;大小响应式 会随着屏幕的变动而自动调整…

[实验]Keil 4下仿真三星2440A芯片的汇编及CPIO控制实验

一、安装Keil uVision4 (详细安装过程忽略) 点击finish完成安装 二、新建项目&#xff0c;导入项目文件 选择对应的芯片&#xff0c;此处我们选择三星的S3C2440A&#xff0c;点击OK 在Source Group 1处右键&#xff0c;点击Add Files to "Sourcce Group 1’…将下图…

每日一题(PTAL2-022 ):重排链表--排坑

它的测试数据有可能有分裂节点&#xff0c;所以需要计算实际所给链表的长度 #include<bits/stdc.h> using namespace std; struct Node{int val;int next; }x[100005]; int main(){int j0;int start;int n;int ad1,num,ad2;cin>>start>>n;for(int i0;i<n…

从 MySQL 到 ClickHouse 实时数据同步 —— Debezium + Kafka 表引擎

目录 一、总体架构 二、安装配置 MySQL 主从复制 三、安装配置 ClickHouse 集群 四、安装 JDK 五、安装配置 Zookeeper 集群 六、安装配置 Kafaka 集群 七、安装配置 Debezium-Connector-MySQL 插件 1. 创建插件目录 2. 解压文件到插件目录 3. 配置 Kafka Connector …

【机器学习-18】特征筛选:提升模型性能的关键步骤

一、引言 在机器学习领域&#xff0c;特征筛选是一个至关重要的预处理步骤。随着数据集的日益庞大和复杂&#xff0c;特征的数量往往也随之激增。然而&#xff0c;并非所有的特征都对模型的性能提升有所贡献&#xff0c;有些特征甚至可能是冗余的、噪声较大的或者与目标变量无关…

SpringBoot Aop使用篇

Getting Started SpringBoot AOP的实践 AOP相关的概念&#xff1a; Aspect&#xff08;切面&#xff09;&#xff1a; Aspect 声明类似于 Java 中的类声明&#xff0c;在 Aspect 中会包含着一些 Pointcut 以及相应的 Advice。就是抽离出来的逻辑类&#xff0c;比如日志、权限…

《苍穹外卖》Day08部分知识点记录

一、useGeneratedKeys和keyProperty useGeneratedKeys和keyProperty是<insert>标签中的两个属性&#xff0c;用于处理自动生成的主键值。 1. useGeneratedKeys userGeneratedKeys"true"表示启用自动生成主键功能&#xff1b;当useGeneratedKeys设置为true时…

VScode使用cmake编译

一&#xff1a;输入 ctrlshiftp打开用于命令执行的输入框 二&#xff1a;输入cmake&#xff0c;选择quick start 模式 三&#xff1a;选择版本最高的gcc版本 四&#xff1a;输入项目名称 选择C 五&#xff1a;选择executable 这样便创建好了最简单的cmake例程&#xff0c;一个…

同态加密原理解析

目录 1.数学介绍2.使用多项式环进行加密2.1 私钥和公钥的产生2.2 加密2.3 解密 3.同态计算3.1 同态加法3.2 同态乘法 1.数学介绍 同态加密方案基于一个难以计算的问题Ring Learning with Errorsred。这些方案中的数据在加密和未加密时都用多项式表示。 这里举一个简单的多项式…

AWTK MODBUS Client channel 模型

名称&#xff1a;modbus_client_channel 功能&#xff1a;通过 modbus 协议访问远程 slave 设备上的数据&#xff0c;需要配合 modbus_client模型一起使用。用于将 modbus client 中的 channel 包装成view_model或者view_model_array 一般来说不需要&#xff0c;直接使用modbus…

docker常用基本命令

把jar包和 dockerfile文件放到同一目录下#构建Docker镜像 注意后面的 . 不能省略 docker build -t your-image-name .#运行并创建一个容器 docker run -d -p 8080:8080 --name container_name your-image-name# 停止容器 767fce4cb990 容器ID (容器名也可以) docker stop 767f…

柱形图“变个装”,跟上时尚步伐!

前言 职场中&#xff0c;日报、周报、月报、年度总结&#xff0c;都离不开图表的制作&#xff0c;而柱状图又是最常用的一种&#xff0c;怎样的柱状图&#xff0c;才能让领导更容易阅读&#xff0c;甚至是眼前一亮呢&#xff1f;今天小编就将为大家介绍一下如何借助葡萄城公司…

4月26日 阶段性学习汇报

1.毕业设计与毕业论文 毕业设计已经弄完&#xff0c;加入了KNN算法&#xff0c;实现了基于四种常见病的判断&#xff0c;毕业论文写完&#xff0c;格式还需要调整&#xff0c;下周一发给指导老师初稿。目前在弄答辩ppt&#xff08;25%&#xff09;。25号26号两天都在参加校运会…

六西格玛管理培训并未过气:深挖其现代价值与应用

在众多管理培训中&#xff0c;六西格玛管理培训因其卓越的成效和广泛的适用性而备受推崇。尽管有人认为六西格玛管理培训已经过时&#xff0c;但实际上&#xff0c;它在现代企业中仍具有不可忽视的价值和应用。深圳天行健六西格玛培训公司解析如下&#xff1a; 一、六西格玛管理…