实验五 C语言函数程序设计习题 (使用函数计算两点间的距离,请编写函数fun,使用函数输出字符矩阵,使用函数求最大公约数和最小公倍数)

1. 使用函数计算两点间的距离:给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留2位)小数。要求定义和调用dist(x1,y1,x2,y2)计算两点间的距离。坐标中两点坐标之间的距离公式如下:

#include <stdio.h>
#include <math.h>double dist(x1,y1,x2,y2){return sqrt(pow((x1-x2),2)+pow((y1-y2),2));
}
int main(){printf("%lf\n",dist(4,7,7,11));return 0;
}

2. 请编写函数fun,它的功能是计算并输出给定整数n的所有因子(不包括1与自身)的平方和(规定n的值不大于100)。

输入输出实例

Enter n:56

sum=1113

#include <stdio.h>
#include <math.h>int fun(int n){int i,sum=0;if(n == 1){return 1;}if(n<1 || n>100) {printf("Error!\n");return 0;}for(i=2;i<n;i++){// 如果 n 能被 i 整除 if(!(n%i)){sum += pow(i,2);}}return sum;
}int main(){int n;printf("Enter n:"); scanf("%d",&n);printf("sum=%d\n",fun(n));return 0;
}

3. 使用函数输出字符矩阵:输入矩形的长度len、宽度width和字符ch,输出一个长宽分别为len和width的实心字符矩阵。要求定义并调用函数matrix(len, width, ch),实现在屏幕上显示长度为len、宽度为width,由字符ch组成的实心矩阵图案。

输入输出实例

Enter len,width,ch:5 2 G

GGGGG

GGGGG

#include <stdio.h>
void matrix(int len,int width,char ch){int i,j;for(i=0;i<width;i++){for(j=0;j<len;j++){printf("%c",ch);}printf("\n");}
} 
int main(){int len,width;char ch;printf("Enter len,width,ch:");// 接收一个空格 scanf("%d%d %c",&len,&width,&ch);matrix(len,width,ch);return 0;
}

4. 使用函数求最大公约数和最小公倍数:输入两个正整数m和n(0<m,n<=1000),输出最大公约数和最小公倍数。要求定义和调用函数gcd(m,n)计算m和n的最大公约数,定义和调用函数lcm(m,n)计算m和n的最小公倍数。

输入输出实例

Enter m,n:511 292

gcd = 73

lcd = 2044

#include <stdio.h>
/*** 最大公约数 */
int gcd(int m,int n){int c = m%n;while(c){m = n;n = c;c = m%n;}return n;
}
/*** 最小公倍数 */
int lcm(int m,int n){// 选出 m 和 n 中大的一个 int c=(m>n?m:n);while(1){// 如果 c 同时能被 m 和 n 整除 if(!(c%m)&&!(c%n)){break;}c++;}return c;
}
int main(){int m,n;printf("Enter m,n:");scanf("%d%d",&m,&n);if(m<0 || n<0 || n>1000 || m>1000 ){printf("Error!\n");return 0;}printf("gcd = %d\n",gcd(m,n));printf("lcd = %d\n",lcm(m,n));return 0;
}

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

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

相关文章

1.ORB-SLAM3中如何保存多地图、关键帧、地图点到二进制文件中

1 保存多地图 1.1 为什么保存(视觉)地图 因为我们要去做导航&#xff0c;导航需要先验地图。因此需要保存地图供导航使用&#xff0c;下面来为大家讲解如何保存多地图。 1.2 保存多地图的主函数SaveAtlas 2051 mStrSaveAtlasToFile是配置文件中传递的参数&#xff1a; 这里我们…

ssh远程连接阿里云CentOS:修改为密码登录

文章目录 控制台添加密钥下载Xshell修改密码连接重启服务&#xff1a;重复Xshell使用密码登录 控制台添加密钥 会下载一个pem文件 下载Xshell 新建 通过public key登录 修改密码连接 passwd root然后输入你想要设置的密码两遍 cd /etc/ssh/ vi sshd_config将PasswordAuth…

[论文精读]利用大语言模型对扩散模型进行自我修正

本博客是一篇最新论文的精读&#xff0c;论文为UC伯克利大学相关研究者新近(2023.11.27)在arxiv上上传的《Self-correcting LLM-controlled Diffusion Models》 。 内容提要: 现有的基于扩散的文本到图像生成模型在生成与复杂提示精确对齐的图像时仍然存在困难,尤其是需要数值和…

生成对抗网络(DCGAN)手写数字生成

文章目录 一、前言二、前期工作1. 设置GPU&#xff08;如果使用的是CPU可以忽略这步&#xff09; 二、什么是生成对抗网络1. 简单介绍2. 应用领域 三、创建模型1. 生成器2. 判别器 四、定义损失函数和优化器1. 判别器损失2. 生成器损失 五、定义训练循环六、训练模型七、创建 G…

“前端八股文背诵版“,终于整理完了,堪称最强!

随着互联网的快速发展&#xff0c;前端开发领域成为了IT行业中的热门领域之一。很多求职者都希望能够进入这个领域&#xff0c;但是面对着如此激烈的竞争&#xff0c;很多人都感到无从下手。为了帮助大家更好地掌握前端开发的相关知识&#xff0c;小编整理了一份前端面试题合集…

单片机怎么实现真正的多线程?

单片机怎么实现真正的多线程? 不考虑多核情况时&#xff0c;CPU在一个时间点只能做一件事&#xff0c;因为切换的速度快所以看起来好像是同时执行多个线程而已。 实际上就是用定时器来做时基&#xff0c;以时间片的方式分别执行来实现的&#xff0c;只不过实现起来细节比较复…

网络安全应急响应-Server2228(环境+解析)

网络安全应急响应 任务环境说明: 服务器场景:Server2228(开放链接)用户名:root,密码:p@ssw0rd123

【代码】考虑差异性充电模式的电动汽车充放电优化调度matlab-yalmip-cplex/gurobi

程序名称&#xff1a;考虑差异性充电模式的电动汽车充放电优化调度 实现平台&#xff1a;matlab-yalmip-cplex/gurobi 代码简介&#xff1a;提出了一种微电网中电动汽车的协调充电调度方法&#xff0c;以将负荷需求从高峰期转移到低谷期。在所提出的方法中&#xff0c;基于充…

RHEL8.9 静默安装Oracle19C

RHEL8.9 静默安装Oracle19C 甘肃圆角网络科技开发有限公司 说明(GUI)&#xff1a;  1.实际业务场景中&#xff0c;Linux环境一般情况下是没有GUI的。没有GUI并不意味着没有安装图形界面。可能在部署Linux操作系统环境的时候安装了桌面环境&#xff0c;只是启动的时候设置了启动…

英国人工智能初创公司Stability AI面临卖身压力;深度学习中的检索增强生成简介

&#x1f989; AI新闻 &#x1f680; 英国人工智能初创公司Stability AI面临卖身压力 摘要&#xff1a;多位知情人士透露&#xff0c;英国人工智能初创公司Stability AI正寻求出售公司&#xff0c;因为投资者对其财务状况的压力越来越大。管理层最近几周一直将自己标榜为收购…

MapInfo Pro错误提示:This operation requires elevated privileges……

尝试删除MapInfo Pro时出现错误“此操作需要提升权限。将产品DVD/CD插入媒体播放器并双击setup.exe文件重新启动。此安装程序现在将中止。”。 原因&#xff1a; 这可能是由于权限问题。 解决方式&#xff1a; 1.如果MapInfo Pro setup.exe可用&#xff0c;请执行以下步骤&…

笔记64:Bahdanau 注意力

本地笔记地址&#xff1a;D:\work_file\&#xff08;4&#xff09;DeepLearning_Learning\03_个人笔记\3.循环神经网络\第10章&#xff1a;动手学深度学习~注意力机制 a a a a a a a a a a a

FIORI /N/UI2/FLP 始终在IE浏览器中打开 无法在缺省浏览器中打开

在使用/N/UI2/FLP 打开fiori 启动面板的时候&#xff0c;总是会在IE浏览器中打开&#xff0c;无法在缺省浏览器打开 并且URL中包含myssocntl 无法正常打开 启动面板 这种情况可以取消激活ICF节点/sap/public/myssocntl

spring boot 3.2.0 idea从零开始

spring boot 3.2.0 idea从零开始 最新的spring initilizer 不再支持低版本java&#xff0c;只能选择17、21 。 我也被迫尝试下最新版本的java。 jdk下载地址 自定义好artifact和group之后点击下一步。 在这里选择需要的组件&#xff0c;我准备做web项目所以只选择spring web …

word模板导出word文件

前期准备工作word模板 右键字段如果无编辑域 ctrlF9 一下&#xff0c;然后再右键 wps 直接 ctrlF9 会变成编辑域 pom.xml所需依赖 <dependencies> <!--word 依赖--> <dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId…

vim工具以及如何给用户加上sudo的权限

Linux开发工具之vim以及如何给用户配置sudo的权限文件的操作 1.vim概念的介绍 2.vim的多模式的介绍 3.vim的命令模式与低行模式的相关指令操作 4.vim如何配置 5.如何给普通用户配置sudo的权限 本文开始~~~~ 1. vim概念的介绍 vim是一款多模式的文本编辑器&#xff0c;简单…

C语言-指针讲解(4)

在上一篇博客中&#xff1a; C语言-指针讲解(3) 我们给大家介绍了指针进阶的用法 让下面我们来回顾一下讲了什么吧&#xff1a; 1.字符指针变量类型以及用法 2.数组指针本质上是一个指针&#xff0c;里面存放数组的地址。而指针数组本质上是个数组&#xff0c;里面存放的是指针…

iOS系统上待办事项提醒软件哪个好

在这个快节奏的生活中&#xff0c;各种待办事项充斥了我们的日常工作和生活&#xff0c;尤其对于像我这样的iPhone用户而言&#xff0c;一款能够在iOS系统上快速和准确记录和提醒待办事项的软件&#xff0c;显得至关重要。 正如前几天&#xff0c;我正沉浸在工作中的时突然被领…

【算法】Rabin-Karp 算法

目录 1.概述2.代码实现3.应用 更多数据结构与算法的相关知识可以查看数据结构与算法这一专栏。 有关字符串模式匹配的其它算法&#xff1a; 【算法】Brute-Force 算法 【算法】KMP 算法 1.概述 &#xff08;1&#xff09;Rabin-Karp 算法是由 Richard M. Karp 和 Michael O. R…

时间序列预测 — LSTM实现多变量多步负荷预测(Keras)

目录 1 数据处理 1.1 数据集简介 1.2 数据集处理 2 模型训练与预测 2.1 模型训练 2.2 模型多步预测 2.3 结果可视化 1 数据处理 1.1 数据集简介 实验数据集采用数据集6&#xff1a;澳大利亚电力负荷与价格预测数据&#xff08;下载链接&#xff09;&#xff0c;包括数…