当前位置: 首页 > news >正文

大一作业习题

第一题:答案:

#include <stdio.h> 
void sort(int a[], int m)  //将数组a的前m个元素(从小到大)排序 
{int i = 0;for (i = 0; i < m - 1; i++){int j = 0;int flag = 1;for (j = 0; j < m - 1 - i; j++){if (a[j] > a[j + 1]){int t = 0;t = a[j];a[j] = a[j + 1];a[j + 1] = t;flag = 0;}}if (flag == 1){break;}}
}
void input(int a[], int m) //依次从键盘输入数组a的前m个元素 
{int i = 0;for (i = 0; i < m; i++){scanf("%d", &a[i]);}
}
void print(int a[], int m) //依次输出数组a的前m个元素 
{int i = 0;for (i = 0; i < m; i++){printf("%4d", a[i]);}printf("\n");
}
void insertSortedList(int a[], int m, int num) //将num插入到数组a中(数组a的前m个元素已经排序),使得数组a仍然升序。
{a[m] = num;int i = 0;for(i=m;i>=0;i--){if (a[i] < a[i-1]){int t = a[i-1];a[i-1] = a[i];a[i] = t;}else{break;}}
}
void main()
{int m, k;scanf("%d", &m);int alist[1000];input(alist, m);sort(alist, m);print(alist, m);scanf("%d", &k);insertSortedList(alist, m, k);print(alist, m + 1);
}

第二题:

答案:

#include <stdio.h>
int gcd(int a, int b); //计算并返回整数a,整数b的最大公约数. 
void add(int op1[], int op2[], int rst[]); //计算分数op1和op2的和,保存结果到rst. 
void sub(int op1[], int op2[], int rst[]); //计算分数op1和op2的差,保存结果到rst.
void mul(int op1[], int op2[], int rst[]); //计算分数op1和op2的积,保存结果到rst.
void div(int op1[], int op2[], int rst[]); //计算分数op1和op2的商,保存结果到rst.void main()
{int a, b, c, d;int op1[2], op2[2], rst[2];scanf("%d%d", &op1[1], &op1[0]);scanf("%d%d", &op2[1], &op2[0]);add(op1, op2, rst);printf("%d/%d + %d/%d = %d/%d\n", op1[1], op1[0], op2[1], op2[0], rst[1], rst[0]);sub(op1, op2, rst);printf("%d/%d - %d/%d = %d/%d\n", op1[1], op1[0], op2[1], op2[0], rst[1], rst[0]);mul(op1, op2, rst);printf("%d/%d * %d/%d = %d/%d\n", op1[1], op1[0], op2[1], op2[0], rst[1], rst[0]);div(op1, op2, rst);printf("%d/%d / %d/%d = %d/%d\n", op1[1], op1[0], op2[1], op2[0], rst[1], rst[0]);
}int gcd(int a, int b)//返回参数a,b的最大公约数
{int r = a % b;while (r != 0){a = b;b = r;r = a % b;}return b;
}
void add(int op1[], int op2[], int rst[]) //计算分数op1和op2的和,保存结果到rst. 
{int fm = op1[0] * op2[0];                   //和的分母int fz = op1[1] * op2[0] + op2[1] * op1[0]; //和的分子int g = gcd(fm, fz);rst[0] = fm / g;                     //分子分母同时除以它们的最大公约数,实现约分rst[1] = fz / g;if (rst[0] < 0)                              //确保分母为正数{rst[0] = -rst[0];rst[1] = -rst[1];}
}
void sub(int op1[], int op2[], int rst[])  //计算分数op1和op2的差,保存结果到rst.
{int fm = op1[0] * op2[0];int fz = op1[1] * op2[0] - op2[1] * op1[0];int g = gcd(fm, fz);rst[0] = fm / g;rst[1] = fz / g;if (rst[0] < 0)                              //确保分母为正数{rst[0] = -rst[0];rst[1] = -rst[1];}
}
void mul(int op1[], int op2[], int rst[]) //计算分数op1和op2的积,保存结果到rst.
{int fm = op1[0] * op2[0];int fz = op1[1] * op2[1];int g = gcd(fm, fz);rst[0] = fm / g;rst[1] = fz / g;if (rst[0] < 0)                              //确保分母为正数{rst[0] = -rst[0];rst[1] = -rst[1];}
}
void div(int op1[], int op2[], int rst[])  //计算分数op1和op2的商,保存结果到rst.
{int fm = op1[0] * op2[1];int fz = op1[1] * op2[0];int g = gcd(fm, fz);rst[0] = fm / g;rst[1] = fz / g;if (rst[0] < 0)                              //确保分母为正数{rst[0] = -rst[0];rst[1] = -rst[1];}
}

第三题:

答案:

#include <stdio.h> 
int myisdigital(char ch);                //数字字符判断函数,如果ch是数字字符,则返回1,否则返回0; 
int myisalpha(char ch);                  //字母字符判断函数,如果ch是大小写字母字符, 则返回1,否则返回0; 
int mystrlen(char str[]);                // 返回指定字符串str的长度 (不计\0字符) 
void mystrcat(char str1[], char str2[]);  // 连接的两个字符串, 将str2连接到str1后面 
int mystrcmp(char str1[], char str2[]);  //比较两个字符串,如果str1大,则返回1;如果str2则返回-1;如果相等,返回0; 
void mystrcpy(char str1[], char str2[]);  //复制字符串str2到字符串str1中 void main()
{char str1[1000], str2[100], tmp[100]; int m;int num_alpha = 0; //str1中的字母字符的个数 int num = 0;       //str2中的数组字符构成的整数 int i;scanf("%s%s%d", str1, str2, &m);printf("%d,", mystrlen(str1) + mystrlen(str2));for (i = 0; i < mystrlen(str1); i++)if (myisalpha(str1[i]))num_alpha++;for (i = 0; i < mystrlen(str2); i++)if (myisdigital(str2[i]))num = num * 10 + str2[i] - '0'; //找到一个新数符,将原来的数字左移一位,然后在末位添加新数符 printf("%d,%d,", num_alpha, num);if (mystrcmp(str1, str2) > 0)  // str1比较大,则交换 {mystrcpy(tmp, str1);mystrcpy(str1, str2);mystrcpy(str2, tmp);}for (i = 1; i <= m; i++)mystrcat(str1, str2);printf("%s", str1);
}int myisdigital(char ch)
{if (ch >= '0' && ch <= '9')return 1;elsereturn 0;
}void mystrcat(char str1[], char str2[])
{int i = 0, j = 0;while (str1[i] != '\0')i++;while (str2[j] != '\0'){str1[i] = str2[j];i++;j++;}str1[i] = '\0';  //给str1最后赋值一个结束字符,这里不可遗漏!!! 
}int myisalpha(char ch)                  //字母字符判断函数,如果ch是大小写字母字符, 则返回1,否则返回0;
{if ((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z'))return 1;elsereturn 0;
}int mystrlen(char str[])                // 返回指定字符串str的长度 (不计\0字符)
{int i = 0;while (str[i] != '\0'){i++;}return i;
}int mystrcmp(char str1[], char str2[])  //比较两个字符串,如果str1大,则返回1;如果str2则返回-1;如果相等,返回0;
{int i = 0, j = 0;if (mystrlen(str1) < mystrlen(str2)){for (i = 0; i <= mystrlen(str1); i++){if (str1[i] > str2[i])return 1;if ((str1[i] < str2[i])|| (str1[i] == str2[i]) && i == mystrlen(str1))return -1;}}if (mystrlen(str1) > mystrlen(str2)){for (i = 0; i <= mystrlen(str2); i++){if (str1[i] > str2[i] || ((str1[i] == str2[i]) && i == mystrlen(str2)))return 1;if (str1[i] < str2[i])return -1;}}if (mystrlen(str1) == mystrlen(str2)){for (i = 0; i <= mystrlen(str2); i++){if (str1[i] > str2[i])return 1;if (str1[i] < str2[i])return -1;if ((str1[i] == str2[i]) && i == mystrlen(str2))return 0;}}
}void mystrcpy(char str1[], char str2[])  //复制字符串str2到字符串str1中 
{int i = 0;for (i = 0; i < mystrlen(str2); i++){str1[i] = str2[i];}str1[i] = '\0';
}

相关文章:

大一作业习题

第一题&#xff1a;答案&#xff1a; #include <stdio.h> void sort(int a[], int m) //将数组a的前m个元素(从小到大)排序 {int i 0;for (i 0; i < m - 1; i){int j 0;int flag 1;for (j 0; j < m - 1 - i; j){if (a[j] > a[j 1]){int t 0;t a[j];…...

Python大模型TensorFlow/PyTorch/Scikit-learn/Keras/OpenCV/Gensim

Python 作为一种高级编程语言&#xff0c;可以用于开发各种大小的模型。以下是一些常见的 Python 大模型&#xff0c;以及它们的优势、劣势和使用场景&#xff1a; TensorFlow&#xff1a; 优势&#xff1a;TensorFlow 是一个非常流行的深度学习库&#xff0c;具有高度的可扩…...

TCP 和 UDP 区别? 2、TCP/IP 协议涉及哪几层架构? 3、描述下 TCP 连接 4 次挥手的过程?为什么要 4 次挥手?

文章目录 1、TCP 和 UDP 区别&#xff1f;2、TCP/IP 协议涉及哪几层架构&#xff1f;3、描述下 TCP 连接 4 次挥手的过程&#xff1f;为什么要 4 次挥手&#xff1f;4、计算机插上电源操作系统做了什么&#xff1f;5、Linux 操作系统设备文件有哪些&#xff1f; 1、TCP 和 UDP …...

pyside/qt03——人机协同的编程教学—直接面向chatGPT实战开发(做中学,事上练)

先大概有个草图框架&#xff0c;一点点丰富 我纠结好久&#xff0c;直接用Python写UI代码 还是用designer做UI 再转Python呢&#xff0c; 因为不管怎么样都要转成Python代码&#xff0c; 想了想还是学一下designer吧&#xff0c;有个中介&#xff0c;有直观理解。 直接这样也可…...

swing快速入门(五)

注释很详细&#xff0c;直接上代码 上一篇 本篇新增内容&#xff1a; 1.布局管理器BorderLayout 2.自适应尺寸方法pack() import java.awt.*; public class swing_test_3 {public static void main(String[] args) {Frame framenew Frame("演示BorderLayout");//…...

银河麒麟v10系统SSH远程管理及切换root用户的操作方法

&#x1f4da;&#x1f4da; &#x1f3c5;我是默&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; ​​ &#x1f31f;在这里&#xff0c;我要推荐给大家我的专栏《Linux》。&#x1f3af;&#x1f3af; &#x1f680;无论你是编程小白&#xff0c;还是有一…...

设计模式——建造者模式(Java示例)

引言 生成器是一种创建型设计模式&#xff0c; 使你能够分步骤创建复杂对象。 与其他创建型模式不同&#xff0c; 生成器不要求产品拥有通用接口。 这使得用相同的创建过程生成不同的产品成为可能。 复杂度&#xff1a; 中等 流行度&#xff1a; 流行 使用示例&#xff1a…...

深入探索 Spring Boot:简化开发,加速部署的全方位利器

目录 导言 1. 自动配置&#xff08;Auto-Configuration&#xff09; 2. 起步依赖&#xff08;Starter Dependencies&#xff09; 3. 嵌入式 Web 服务器 4. Actuator 5. 外部化配置 6. 简化的安全性配置 7. Spring Boot CLI 8. Spring Boot DevTools 导言 在当今软件开…...

SpectralGPT: Spectral Foundation Model 论文翻译3

遥感领域的通用大模型 2023.11.13在CVPR发表 原文地址&#xff1a;[2311.07113] SpectralGPT: Spectral Foundation Model (arxiv.org) E.消融研究 在预训练阶段&#xff0c;我们对可能影响下游任务表现的各种因素进行了全面研究。这些因素包括掩蔽比、ViT patch大小、数据规…...

ubuntu-c++-可执行模块-动态链接库-链接库搜索-基础知识

文章目录 1.动态链接库简介2.动态库搜索路径3.运行时链接及搜索顺序4.查看可运行模块的链接库5.总结 1.动态链接库简介 动态库又叫动态链接库&#xff0c;是程序运行的时候加载的库&#xff0c;当动态链接库正确安装后&#xff0c;所有的程序都可以使用动态库来运行程序。动态…...

HTML中使用JavaScript实现一个简单的鼠标悬停特效。

代码中&#xff0c;我们首先在CSS中定义了一个红色的方块&#xff0c;然后使用:hover伪类定义了鼠标悬停时的样式。接着&#xff0c;在JavaScript中定义了一个函数showMessage()&#xff0c;用于在控制台输出一条消息。最后&#xff0c;在HTML中使用<div>标签定义了一个i…...

深入.NET平台和C#编程总结大全

第一章 简单认识.NET框架 &#xff08;1&#xff09;首先我们得知道 .NET框架具有两个主要组件&#xff1a;公共语言进行时CLR&#xff08;Common Language Runtime&#xff09;和框架类库FCL&#xff08;Framework Class Library&#xff09; 配图&#xff1a; &#xff08;…...

jOOQ的使用场景

jOOQ的使用场景 jOOQ最初是作为一个库完全是JDBC和所有的数据库交互的抽象层而被创建。 在已有的软件产品中经常遇到的各种最佳实践被应用到这个库中。包含如下&#xff1a; 类型安全数据库对象引用&#xff0c;通过自动生成的模式&#xff0c; 表&#xff0c; 列&#xff0c…...

Pytorch-Transformer轴承故障一维信号分类(三)

目录 前言 1 数据集制作与加载 1.1 导入数据 第一步&#xff0c;导入十分类数据 第二步&#xff0c;读取MAT文件驱动端数据 第三步&#xff0c;制作数据集 第四步&#xff0c;制作训练集和标签 1.2 数据加载&#xff0c;训练数据、测试数据分组&#xff0c;数据分batch…...

pycharm多线程报错的问题(未解决)

暂未解决&#xff01; 看了一下可能是这里的问题&#xff1a; 根据建议&#xff0c;在walks之前加了 freeze_support() 但是没有效果。 关键是&#xff0c;在jupyter上运行是没有问题的&#xff01; 未解决。...

【常用字符大全】含emoji表情

常用符号大全 ❤❥웃유♋☮✌☏☢☠✔☑♚▲♪✈✞↑↓◆◇⊙■□△▽─│♥❣♂♀☿Ⓐ✍✉☣☤✘☒♛▼♫⌘☪≈←→◈◎☉★☆⊿※¡━┃♡ღツ☼☁❅♒✎©™Σ✪✯☭➳卐√↖↗●◐Θ◤◥︻〖〗┄┆℃℉✿ϟ☃☂✄¢€£∞✫★✡↙↘○◑⊕◣◢︼【】┅┇…...

android 蓝牙开关设置

frameworks/base/packages/SettingsProvider/res/values/defaults.xml <bool name"def_bluetooth_on">false</bool>将 def_bluetooth_on 的值设为false&#xff08;系统默认开启值&#xff09; adb动态设置 关闭&#xff1a;adb shell settings put gl…...

C++ extern “C“ 用法

extern “C” 由于c中需要支持函数重载&#xff0c;所以c和c中对同一个函数经过编译后生成的函数名是不相同的 extern “C” 的主要作用就是为了实现c代码能够调用其他 c 语言代码。 1(不常用) //告诉编译器 show() 函数按c语言的方式进行编译和链接 extern "C" voi…...

HTML面试题---专题四

文章目录 一、前言二、如何在 HTML 中嵌入音频文件&#xff1f;三、解释 <script> 标签中 defer 属性的用途。四、如何在 HTML 中创建粘性/固定导航栏&#xff1f;五、HTML 中的 span 元素的用途是什么&#xff1f;六、如何使 HTML 元素可拖动&#xff1f;七、解释 <i…...

stm32项目(11)——基于stm32的俄罗斯方块游戏机

1.功能设计 使用stm32f103zet6平台&#xff0c;以及一块LCD屏幕&#xff0c;实现了一个俄罗斯方块游戏机。可以用按键调整方块的位置、还可以控制方块下降的速度&#xff01; 2.视频演示 俄罗斯方块 3.俄罗斯方块发展史 俄罗斯方块是一种经典的拼图游戏&#xff0c;由苏联俄罗…...

Android Wi-Fi 连接失败日志分析

1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分&#xff1a; 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析&#xff1a; CTR…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者

抖音增长新引擎&#xff1a;品融电商&#xff0c;一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中&#xff0c;品牌如何破浪前行&#xff1f;自建团队成本高、效果难控&#xff1b;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

c++ 面试题(1)-----深度优先搜索(DFS)实现

操作系统&#xff1a;ubuntu22.04 IDE:Visual Studio Code 编程语言&#xff1a;C11 题目描述 地上有一个 m 行 n 列的方格&#xff0c;从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子&#xff0c;但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案&#xff0c;如果正确地操作&#xff0c;重启Eureka集群中的节点&#xff0c;对已经注册的服务影响非常小&#xff0c;甚至可以做到无感知。 但如果操作不当&#xff0c;可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

为什么要创建 Vue 实例

核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程

STM32F1 本教程使用零知标准板&#xff08;STM32F103RBT6&#xff09;通过I2C驱动ICM20948九轴传感器&#xff0c;实现姿态解算&#xff0c;并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化&#xff0c;适合嵌入式及物联网开发者。在基础驱动上新增…...