11.20作业
题目一:
题目:
// 数组的行列转置
代码:
// 数组的行列转置
#include <stdio.h>
int main()
{int a[2][3], i, j, b[3][2];printf("输入一个两行三列的数组a:\n");for (i = 0; i < 2; i++)for (j = 0; j < 3; j++){scanf("%d", &a[i][j]);}for (i = 0; i < 2; i++)for (j = 0; j < 3; j++){b[j][i] = a[i][j];}printf("转置后得到的一个三行两列的数组b:\n");for (i = 0; i < 3; i++){for (j = 0; j < 2; j++){printf("%d\t", b[i][j]);}printf("\n");}
}
题目二:
题目:
// 打印杨辉三角
代码:
#define N 11
#include <stdio.h>
int main()
{int i, j, a[N][N];for (i = 1; i < N; i++){a[i][i] = 1;a[i][1] = 1;}for (i = 3; i < N; i++){for (j = 2; j <= i - 1; j++){a[i][j] = a[i - 1][j - 1] + a[i - 1][j];}}for (i = 1; i < N; i++){for (j = 1; j <= i; j++){printf("%d\t", a[i][j]);}printf("\n");}printf("\n");
}
题目三:
题目:
// 数组对角线元素求和
代码:
#include <stdio.h>
#define N 3
int main()
{int a[N][N];int i, j, sum = 0;printf("输入%d行%d列的数组:\n", N, N);for (i = 0; i < N; i++){for (j = 0; j < N; j++){scanf("%d", &a[i][j]);}}for (i = 0; i < N; i++){sum = sum + a[i][i] + a[i][N - 1 - i];}if (N % 2 != 0){sum = sum - a[N / 2][N / 2];}printf("对角线元素求和为:%d",sum);
}
题目四:
题目:
//求 主对角线元素的最大值 主对角线元素的积 主对角线元素的平方和
代码:
//求 主对角线元素的最大值 主对角线元素的积 主对角线元素的平方和
#include <stdio.h>
#define N 3
int main()
{int a[N][N];int i, j, sum = 0, max, p = 1, sqSum = 0;printf("输入%d行%d列的数组:\n", N, N);for (i = 0; i < N; i++){for (j = 0; j < N; j++){scanf("%d", &a[i][j]);}}max = a[0][0];for (i = 0; i < N; i++){
//主对角线元素的最大值if (a[i][i] > max){max = a[i][i];}//主对角线元素的积p = p * a[i][i];//主对角线元素的平方和sqSum = sqSum + a[i][i] * a[i][i];}printf("主对角线元素的最大值: %d\n", max);printf("主对角线元素的积: %d\n", p);printf("主对角线元素的平方和: %d\n", sqSum);
}
题目五:
题目:
//找出5个数中的最小值
代码:
//找出5个数中的最小值
#include <stdio.h>int min(int x, int y) {return (x < y ? x : y); //condition ? expression1(true) : expression2(false);
}int main() {int a[5], i, m;printf("输入五个数:");for (i = 0; i < 5; i++) {scanf("%d", &a[i]);}m = a[0];for (i = 1; i < 5; i++) {m = min(m, a[i]);}printf("最小值为:%d\n", m);return 0;
}
题目六:
题目:
//定义了一个二维数组score,用于存储10个学生4门课程的成绩,打印出每个学生的索引和他们的成绩总和
代码:
//定义了一个二维数组score,用于存储10个学生4门课程的成绩,打印出每个学生的索引和他们的成绩总和#include <stdio.h>int sum(int x, int y, int z) {return (x + y + z);
}int main() {int score[5][4], i, j;// 输入每个学生的三门成绩printf("依次输入每个学生的三门课程成绩:\n");for(i = 0; i < 5; i++) {for(j = 1; j < 4; j++) {scanf("%d", &score[i][j]);}// 计算总分并存储在 score[i][0]score[i][0] = sum(score[i][1], score[i][2], score[i][3]);}// 输出每个学生的编号及其总分for(i = 0; i < 5; i++) {printf("Student %d: Total Score = %d\n", i + 1, score[i][0]);}return 0;
}
题目七:
题目:
//计算数组中每个元素的第 k 位数字之和
代码:
//计算数组中每个元素的第 k 位数字之和#define N 10
#include<stdio.h>
int fun(int n, int k) {int i;for (i = 1; i <= k - 1; i++) {n = n / 10;n = n % 10;}return n;
}int main() {int a[N], k, i, sum = 0;printf("输入十个数:\n");for (i = 0; i < N; i++) {scanf("%d", &a[i]);}printf("Input k:\n");scanf("%d", &k);for (i = 0; i < N; i++) {sum += fun(a[i], k);}printf("The k sum is %d\n", sum);return 0;
}
题目八:
题目:
//用冒泡排序算法对数组进行排序,并在排序前后打印数组
代码:
//用冒泡排序算法对数组进行排序,并在排序前后打印数组
#include<stdio.h>void sort(int b[], int n) {int i, j, t;for (i = 1; i < n; i++) {for (j = 0; j < n - i; j++) {if (b[j] > b[j + 1]) {t = b[j];b[j] = b[j + 1];b[j + 1] = t;}}}
}void printarr(int b[], int n) {int i;for (i = 0; i < n; i++)printf("%5d", b[i]);printf("\n");
}int main() {int a[10] = {11, 12, 63, 97, 58, 80, 48, 32, 73, 36};printf("Before sort:\n");printarr(a, 10);sort(a, 10);printf("After sort:\n");printarr(a, 10);return 0;
}
代码优化:
#include <stdio.h>void sort(int b[], int n) {int i, j, t;int swapped;for (i = 0; i < n - 1; i++) { // 外层循环控制排序的轮数swapped = 0; // 记录这一轮是否有交换for (j = 0; j < n - 1 - i; j++) { // 内层循环进行相邻元素比较if (b[j] > b[j + 1]) {t = b[j];b[j] = b[j + 1];b[j + 1] = t;swapped = 1; // 如果发生交换,则标记为 1}}if (!swapped) { // 如果这一轮没有交换,数组已经有序,提前退出break;}}
}void printarr(int b[], int n) {int i;for (i = 0; i < n; i++)printf("%5d", b[i]); // 每个数字占5个字符宽度printf("\n");
}int main() {int a[10] = {11, 12, 63, 97, 58, 80, 48, 32, 73, 36};printf("Before sort:\n");printarr(a, 10);sort(a, 10);printf("After sort:\n");printarr(a, 10);return 0;
}
相关文章:
11.20作业
题目一: 题目: // 数组的行列转置 代码: // 数组的行列转置 #include <stdio.h> int main() {int a[2][3], i, j, b[3][2];printf("输入一个两行三列的数组a:\n");for (i 0; i < 2; i)for (j 0; j < 3; j){scanf…...
Ubuntu Linux使用前准备动作_使用root登录图形化界面
Ubuntu默认是不允许使用 root 登录图形化界面的。这是出于安全考虑的设置。但如果有需要,可以通过以下步骤来实现使用 root 登录: 1、设置 root 密码 打开终端,使用当前的管理员账户登录系统。在终端中输入命令sudo passwd root,…...
DICOM核心概念:显式 VR(Explicit VR)与隐式 VR(Implicit VR)在DICOM中的定义与区别
在DICOM(Digital Imaging and Communications in Medicine)标准中,VR(Value Representation) 表示数据元素的值的类型和格式。理解显式 VR(Explicit VR)与隐式 VR(Implicit VR&#…...
源码分析Spring Boot (v3.3.0)
. ____ _ __ _ _/\\ / ____ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | _ | _| | _ \/ _ | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) ) |____| .__|_| |_|_| |_\__, | / / / /|_||___//_/_/_/:: Spring Boot :: (v3.3.0)//笔记背…...
IPv6 NDP 记录
NDP(Neighbor Discovery Protocol,邻居发现协议) 是 IPv6 的一个关键协议,它组合了 IPv4 中的 ARP、ICMP 路由器发现和 ICMP 重定向等协议,并对它们作出了改进。该协议使用 ICMPv6 协议实现,作为 IPv6 的基…...
linux常用命令(文件操作)
目录 1. ls - 列出目录内容 2. cd - 更改目录 3. pwd - 打印当前工作目录 4. mkdir - 创建目录 5. rm - 删除文件或目录 6. cp - 复制文件或目录 7. mv - 移动或重命名文件 8. touch - 更新文件访问和修改时间 9. cat - 显示文件内容 10. grep - 搜索文本 11. chmod…...
内存管理 I(内存管理的基本原理和要求、连续分配管理方式)
一、内存管理的基本原理和要求 内存管理(Memory Management)是操作系统设计中最重要和最复杂的内容之一。虽然计算机硬件技术一直在飞速发展,内存容量也在不断增大,但仍然不可能将所有用户进程和系统所需要的全部程序与数据放入主…...
【Redis】基于Redis实现秒杀功能
业务的流程大概就是,先判断优惠卷是否过期,然后判断是否有库存,最好进行扣减库存,加入全局唯一id,然后生成订单。 一、超卖问题 真是的场景下可能会有超卖问题,比如开200个线程进行抢购,抢100个…...
Hadoop 使用过程中 15 个常见问题的详细描述、解决方案
目录 问题 1:配置文件路径错误问题描述解决方案Python 实现 问题 2:YARN 资源配置不足问题描述解决方案Python 实现 问题 3:DataNode 无法启动问题描述解决方案Python 实现 问题 4:NameNode 格式化失败问题描述解决方案Python 实现…...
【Flutter 问题系列第 84 篇】如何清除指定网络图片的缓存
这是【Flutter 问题系列第 84 篇】,如果觉得有用的话,欢迎关注专栏。 博文当前所用 Flutter SDK:3.24.3、Dart SDK:3.5.3,网络图片缓存用的插件 cached_network_image: 3.4.1,缓存的网络图像的存储和检索用…...
【UE5】使用基元数据对材质传参,从而避免新建材质实例
在项目中,经常会遇到这样的需求:多个模型(例如 100 个)使用相同的材质,但每个模型需要不同的参数设置,比如不同的颜色或随机种子等。 在这种情况下,创建 100 个实例材质不是最佳选择。正确的做…...
鸿蒙动画开发07——粒子动画
1、概 述 粒子动画是在一定范围内随机生成的大量粒子产生运动而组成的动画。 动画元素是一个个粒子,这些粒子可以是圆点、图片。我们可以通过对粒子在颜色、透明度、大小、速度、加速度、自旋角度等维度变化做动画,来营造一种氛围感,比如下…...
IDEA2023 创建SpringBoot项目(一)
一、Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。 二、快速开发 1.打开IDEA选择 File->New->Project 2、…...
VSCode:终端打开一片空白,无cmd
第一步:找到右下角设置图标 第二步:找到 Terminal - Integrated - Default Profile: Windows: 选择一个本地存在的命令方式,重启即可 也可以直接在右下角直接选择...
Zea maize GO
1.涉及到新旧基因组的转化 B73v4_to_B73v5 (davidbioinformatics只支持新版基因组) MaizeGDB Map文件下载https://download.maizegdb.org/Pan-genes/B73_gene_xref/小处理脚本(制作map文件) import pandas as pd# 读取CSV文件 …...
Android开发实战班 - 数据持久化 - 数据加密与安全
在 Android 应用开发中,数据安全至关重要,尤其是在处理敏感信息(如用户密码、支付信息、个人隐私数据等)时。数据加密是保护数据安全的重要手段,可以有效防止数据泄露、篡改和未经授权的访问。本章节将介绍 Android 开…...
EDA实验设计-led灯管动态显示;VHDL;Quartus编程
EDA实验设计-led灯管动态显示;VHDL;Quartus编程 引脚配置实现代码RTL引脚展示现象记录效果展示 引脚配置 #------------------GLOBAL--------------------# set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED" set_…...
Eclipse 查找功能深度解析
Eclipse 查找功能深度解析 Eclipse 是一款广受欢迎的集成开发环境(IDE),它为各种编程语言提供了强大的开发工具。在本文中,我们将深入探讨 Eclipse 的查找功能,这是开发者日常工作中不可或缺的一部分。无论是查找代码中的特定字符串,还是进行更复杂的搜索,如正则表达式…...
第三百二十九节 Java网络教程 - Java网络UDP套接字
Java网络教程 - Java网络UDP套接字 TCP套接字是面向连接的,基于流。基于UDP的套接字是无连接的,基于数据报。 使用UDP发送的数据块称为数据报或UDP数据包。每个UDP分组具有数据,目的地IP地址和目的地端口号。 无连接套接字在通信之前不建立…...
Leetcode215. 数组中的第K个最大元素(HOT100)
链接 第一次: class Solution { public:int findKthLargest(vector<int>& nums, int k) {sort(nums.begin(),nums.end());int n nums.size();return nums[n-k];} }; 这显然不能出现在面试中,因为面试官考察的不是这个。 正确的代码&#…...
QT与嵌入式——搭建串口
1、源码 由于我需要不止一个串口来进行数据交互,所以简单的封装了一下 void Usb_Init(QString portName, QSerialPort *Port) {Port->setPortName(portName);Port->setBaudRate(QSerialPort::Baud115200); // 设置波特率,根据你的开发板配置修改…...
Shell编程-6
声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章 感谢泷羽sec 团队的教学 视频地址:shell(6)if条件判断与for循环结构_哔哩哔哩_bilibili 一、if条件判断 在Shell脚本中,if语句用于基于条件的评估来执行不同的代码块。…...
使用 Postman 设置 Bearer Token 进行身份验证
学习笔记 1. 打开 Postman 并创建新请求 打开 Postman。 在左上角点击 按钮,创建一个新的请求。 2. 选择 HTTP 方法 在请求类型(默认为 GET)旁边的下拉菜单中,选择你需要的 HTTP 方法,如 POST、GET、PUT 等。 3…...
现在转前端怎么样?
互联网技术日新月异,软件开发者追逐技术浪潮的脚步从未停歇。在这个快速发展的行业中,如何规划自己的职业道路,选择合适的技术方向,成为了许多开发者面临的重要抉择。本文将围绕技术选择这个话题,分享一些深入的思考和…...
【算法一周目】滑动窗口(1)
目录 长度最小的子数组 解题思路 代码实现 无重复字符的最大字串 解题思路 代码实现 最大连续1的个数l l l 解题思路 代码实现 将x减到0的最小操作数 解题思路 代码实现 长度最小的子数组 题目链接:209. 长度最小的子数组题目描述: 给定一个…...
React Native 基础
React 的核心概念 定义函数式组件 import组件 要定义一个Cat组件,第一步要使用 import 语句来引入React以及React Native的 Text 组件: import React from react; import { Text } from react-native; 定义函数作为组件 const CatApp = () => {}; 渲染Text组件...
【C++笔记】list使用详解及模拟实现
前言 各位读者朋友们大家好!上期我们讲了vector的使用以及底层的模拟实现,这期我们来讲list。 目录 前言一. list的介绍及使用1.1 list的介绍1.2 list的使用1.2.1 list的构造1.2.2 list iterator的使用1.2.3 list capacity1.2.4 list element access1.…...
【机器学习】机器学习中用到的高等数学知识-7.信息论 (Information Theory)
熵 (Entropy):用于评估信息的随机性,常用于决策树和聚类算法。交叉熵 (Cross-Entropy):用于衡量两个概率分布之间的差异,在分类问题中常用。 信息论作为处理信息量和信息传输的数学理论,在机器学习中具有广泛的应用。…...
《现代制造技术与装备》是什么级别的期刊?是正规期刊吗?能评职称吗?
问题解答 问:《现代制造技术与装备》是不是核心期刊? 答:不是,是知网收录的第二批认定学术期刊。 问:《现代制造技术与装备》级别? 答:省级。主管单位:齐鲁工业大学࿰…...
09 - Clickhouse的SQL操作
目录 1、Insert 1.1、标准 1.2、从表到表的插入 2、Update和Delete 2.1、删除操作 2.2、修改操作 3、查询操作 3.1、with rollup:从右至左去掉维度进行小计 3.2、with cube : 从右至左去掉维度进行小计,再从左至右去掉维度进行小计 3.3、with …...
公益网站建设/百度小说风云榜排行榜官网
2019独角兽企业重金招聘Python工程师标准>>> 1.IDEA快捷键1.1.进入方法所属的类:Ctrl左击类1.2.进入方法:CtrlAlt左击类2.用JQuery选择器的时候,判断提示语需要成对出现,比如设置按钮置灰,那么else就应该设置成按钮取消置灰3.SpringMVC中,前端传递的参数均可以在Htt…...
佛山网站建设哪家便宜/怎样在百度打广告
前言 想要成為一名優秀的Android開發,你需要一份完備的 知識體系,在這裏,讓我們一起成長為自己所想的那樣。 金九银十是大家的換工作潮,在這波浪潮裡沉浮的我經歷過快一個月的面試後,決定把這些遇到的問題記下來 加…...
美食网站建设规划书/百度一下官方网页
Oracle Grant详解GRANT 名称 GRANT — 赋予一个用户,一个组或所有用户访问权限 GRANT privilege [, ...] ON object [, ...] TO { PUBLIC | GROUP group | username } 输入 privilege 可能的权限有: SELECT 访问声明的表/视图的所有列/字段࿰…...
天津专业网站建设公司/深圳全网推广排名
我校计算机实验教学中心资源整合工作实质启动发布日期: 2020-07-02 发布人: xcb6月24日,学校院长办公会议审定通过了《陇东学院实验室建设与资源整合工作实施意见(讨论稿)》,原则同意在维持现有场地空间和设备资源不变的前提下,对原来由二级…...
建网站必需服务器吗/建站是什么意思
GDB 是我们平时调试 c/c程序的利器, 查起复杂的 bug 问题,比打印大法要好的多,但是也不得不说, gdb 在默认情况下用起来并不是很好用,最近学习到几个高级点的技巧,分享下:一 美化打印先上个例子:#include <stdio.h>typedef struct {int i ;int j;char * str;int array[10…...
web前端开发培训学校/seo专员是什么职位
Resbird不仅可进行API接口设计开发、测试,还可以执行API的录制和回放、服务器模拟等。整个过程无需一行代码,当然你可以通过RestbBird提供的编程能力,处理各种高级复杂的任务。本文以录制和回放百度搜索API为例,介绍Resbird API接…...