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];} }; 这显然不能出现在面试中,因为面试官考察的不是这个。 正确的代码&#…...
告别编译噩梦:在Ubuntu 22.04上为你的C++项目搞定Abseil依赖的三种方法
告别编译噩梦:在Ubuntu 22.04上为你的C项目搞定Abseil依赖的三种方法 在C项目的开发过程中,依赖管理一直是开发者面临的一大挑战。特别是对于现代C项目而言,如何高效、可靠地引入和管理第三方库,往往决定了项目的开发效率和最终质…...
混合原型验证:软硬件协同的芯片设计革命
1. 混合原型验证:从割裂到统一的芯片设计革命在芯片设计的漫长周期里,硬件工程师和软件工程师常常像是在两个平行世界里工作。硬件团队埋头于RTL编码、综合、布局布线,最终将设计烧录进FPGA原型板,进行物理层面的调试和性能测试。…...
通过AxisApi中转站使用国外API大模型教程
前言:所有的国外大模型想不通过中转站直接使用,其实是很麻烦的的事情,就拿codex来说,需要一个谷歌账号,没有谷歌账号需要注册,注册还必须要使用国外的手机号码和验证码校验审核,流程很繁琐&…...
详解51单片机智能小车避障核心:超声波、漫反射与红外传感器的实战选型与调试
1. 智能小车避障传感器的核心选择 做智能小车最让人头疼的就是避障功能了。我当年第一次做51单片机小车时,光选传感器就折腾了好几个星期。市面上常见的避障传感器主要有三种:超声波模块、漫反射光电管和红外传感器。每种传感器都有自己的脾气ÿ…...
利用大模型分歧优化NLP标注
In this blogpost I’d like to talk about large language models. There’s a bunch of hype, sure, but there’s also an opportunity to revisit one of my favourite machine learning techniques: disagreement. 在本文中,我想讨论大语言模型。虽然存在大量炒…...
知网AI率80%降到15%教程,比话降AI知网算法专精+售后保障!
知网AI率80%降到15%教程,比话降AI知网算法专精售后保障! 如果你是硕博毕业生、学校送知网检测、答辩前查出 AI 率 80%——这篇文章直接给你完整操作教程。从「拿到 80% 报告」到「学校送审通过」的完整路径,每一步该做什么、花多少时间、花多…...
告别激活烦恼:KMS_VL_ALL_AIO智能激活脚本的终极解决方案
告别激活烦恼:KMS_VL_ALL_AIO智能激活脚本的终极解决方案 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 你是否曾经为Windows系统激活而烦恼?或者为Office办公软件的激活…...
MTCNN级联网络设计精讲:从P-Net到O-Net,看作者如何用‘奇数特征图’和‘重叠池化’提升召回率
MTCNN级联网络架构解密:奇数特征图与重叠池化的工程智慧 人脸检测领域的技术演进始终围绕着两个核心命题:如何在有限计算资源下实现实时检测,以及如何在小目标场景中保持高召回率。2016年问世的MTCNN(Multi-task Cascaded Convol…...
TQVaultAE:泰坦之旅终极仓库管理与装备锻造指南
TQVaultAE:泰坦之旅终极仓库管理与装备锻造指南 【免费下载链接】TQVaultAE Extra bank space for Titan Quest Anniversary Edition 项目地址: https://gitcode.com/gh_mirrors/tq/TQVaultAE 你是否曾经在《泰坦之旅》中因为背包爆满而不得不丢弃心爱的传奇…...
终极视频字幕提取指南:如何用本地OCR工具高效提取87种语言硬字幕
终极视频字幕提取指南:如何用本地OCR工具高效提取87种语言硬字幕 【免费下载链接】video-subtitle-extractor 视频硬字幕提取,生成srt文件。无需申请第三方API,本地实现文本识别。基于深度学习的视频字幕提取框架,包含字幕区域检测…...
