C语言经典例题-12

1.杨辉三角

题目描述:

KK知道什么叫杨辉三角之后对杨辉三角产生了浓厚的兴趣,他想知道杨辉三角的前n行,请编程帮他

解答。杨辉三角,本质上是二项式(a+b)的n次方展开后各项的系数排成的三角形。其性质包括:每行的端点数为1, 一个数也为1;每个数等于它左上方和上方的两数之和。

输入描述:

第一行包含一个整数数n。 (1≤n≤30)

输出描述:

包含n行,为杨辉三角的前n行,每个数输出域宽为5。

输入:

6

输出:

1

1 1

1   2 1

1   3   3   1

1   4   6   4   1

1   5   10   10   5   1

参考代码:

#include <stdio.h>int main()
{int n = 0;scanf("%d", &n);int i = 0;int j = 0;int arr[30][30] = { 0 };for (i = 0; i < n; i++){for (j = 0; j <= i; j++){if (i == j){arr[i][j] = 1;}if (j == 0){arr[i][j] = 1;}if (i > 1 && j > 0){arr[i][j] = arr[i-1][j-1] + arr[i-1][j];}}}for (i = 0; i < n; i++){for (j = 0; j <= i; j++ ){printf("%5d", arr[i][j]);}printf("\n");}return 0;
}
2.井字棋

题目描述:

KK和BoBo玩 “井”字棋。也就是在九宫格中,只要任意行、列,或者任意对角线上面出现三个连续相同的棋子,就能获胜。请根据棋盘状态,判断当前输赢。

输入描述:

三行三列的字符元素,代表棋盘状态,字符元素用空格分开,代表当前棋盘,其中元素为K代表KiKi玩家的棋子,为O表示没有棋子,为B代表BoBo玩家的棋子。

输出描述:

如果KK获胜,输出“KK wins!”;

如果BoBo获胜,输出“BoBo wins!”;

如果没有获胜,输出“No winner!”。

输入:

K O B

O K B

B O K

输出:

KK wins!

参考代码:

#include <stdio.h>int main()
{int i = 0;int j = 0;int arr[3][3] = { 0 };char flag = 'O';for (i = 0; i < 3; i++){for (j = 0; j < 3; j++){scanf(" %c", &arr[i][j]);}}for (i = 0; i < 3; i++){if (arr[i][0] == arr[i][1] && arr[i][1] == arr[i][2]){flag = arr[i][1];break;}if (arr[0][i] == arr[1][i] && arr[1][i] == arr[2][i]){flag = arr[1][i];break;}if (arr[0][0] == arr[1][1] && arr[1][1] == arr[2][2]){flag = arr[1][1];break;}if (arr[0][2] == arr[1][1] && arr[1][1] == arr[0][0] ){flag = arr[1][1];break;}}if (flag == 'K')printf("KK wins!\n");else if (flag == 'B')printf("BOBO wins!\n");elseprintf("No winn\n");return 0;
}
3.小乐乐定闹钟

题目描述:

小乐乐比较懒惰,他现在想睡觉,然后再去学习。他知道现在的时刻,以及自己要睡的时长,想设定一个闹钟叫他起床学习,但是他太笨了,不知道应该把闹钟设定在哪个时刻,请你帮助他。(只考虑时和分,不考虑日期)

输入描述:

输入现在的时刻以及要睡的时长k(单位:minute),中间用空格分开。输入格式:hour:minute k(如hour或minute的值为1,输入为1,而不是01)(0 ≤ hour ≤ 23,0 ≤ minute ≤ 59,1 ≤ k ≤ 109)

输出描述:

对于每组输入,输出闹钟应该设定的时刻,输出格式为标准时刻表示法(即时和分都是由两位表示,位数不够用前导0补齐)。

示例1

输入:

0:0 100

输出:

01:40

示例2

输入:

1:0 200

输出:

04:20

参考代码:

#include <stdio.h>int main()
{int k = 0;int hour = 0;int minute = 0;scanf("%d:%d %d", &hour, &minute, &k);hour = k / 60 + hour;minute = k % 60;printf("%02d:%02d", hour, minute);return 0;
}
4.小乐乐排电梯

题目描述:

小乐乐学校教学楼的电梯前排了很多人,他的前面有n个人在等电梯。电梯每次可以乘坐12人,每次上下需要的时间为4分钟(上需要2分钟,下需要2分钟)。请帮助小乐乐计算还需要多少分钟才能乘电梯到达楼上。(假设最初电梯在1层)

输入描述:

输入包含一个整数n (0 ≤ n ≤ 109)

输出描述:

输出一个整数,即小乐乐到达楼上需要的时间。

示例1

输入:

1

输出:

2

示例2

输入:

12

输出:

6

参考代码:

#include <stdio.h>int main()
{int n = 0;int time = 2;scanf("%d", &n);if (n / 12 == 1){printf("%d\n", time+4);}else{printf("%d\n", time);}return 0;
}
5.小乐乐与欧几里得

题目描述:

小乐乐最近在课上学习了如何求两个正整数的最大公约数与最小公倍数,但是他竟然不会求两个正整数的最大公约数与最小公倍数之和,请你帮助他解决这个问题。

输入描述:

每组输入包含两个正整数n和m。(1 ≤ n ≤ 109,1 ≤ m ≤ 109)

输出描述:

对于每组输入,输出一个正整数,为n和m的最大公约数与最小公倍数之和。

示例1

输入:

10 20

输出:

30

示例2

输入:

15 20

输出:

65

参考代码:

#include <stdio.h>int main()
{int n = 0;int m = 0;scanf("%d%d", &n, &m);int max = n > m ? n : m;int min = n > m ? m : n;int GCD = 0; //最大公因数int Lcm = 0; //最小公倍数while (1){if (n % min == 0 && m % min == 0){GCD = min;break;}else{min--;}}while (1){if (max % m == 0 && max % n == 0){Lcm = max;break;}else{max++;}}printf("%d\n", GCD+ Lcm);return 0;
}

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

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

相关文章

用队列实现栈——leetcode刷题

题目的要求是用两个队列实现栈&#xff0c;首先我们要考虑队列的特点&#xff1a;先入先出&#xff0c;栈的特点&#xff1a;后入先出&#xff0c;所以我们的目标就是如何让先入栈的成员后出栈&#xff0c;后入栈的成员先出栈。 因为有两个队列&#xff0c;于是我们可以这样想&…

vue3(实现上下无限来往滚动)

一、问题描述 一般在大屏项目中&#xff0c;很常见的效果&#xff0c;就是容器中的内容缓慢地向下移动&#xff0c;直到底部停止&#xff0c;然后快速滚动回顶部&#xff0c;然后接着缓慢滚动到底部。并且在特定的情况下&#xff0c;还需要进行一些小交互&#xff0c;那就还得让…

Leetcode——面试题02.04.分割链表

面试题 02.04. 分割链表 - 力扣&#xff08;LeetCode&#xff09; 对于该链表OJ&#xff0c;我们两种大的方向&#xff1a; 1.在原链表上修改&#xff1b;2.创建新链表&#xff0c;遍历原链表。 在原链上进行修改&#xff1a;如果该节点的val小于x则继续往后走&#xff0c;如…

2.3Java全栈开发前端+后端(全栈工程师进阶之路)-前端框架VUE3-基础-Vue进阶

Vue方法、计算属性及监听器 在vue中处理复杂的逻辑的时候&#xff0c;我们经常使用计算属性、方法及监听器。 methods&#xff1a;方法&#xff1a;它们是挂载在Vue对象上的函数&#xff0c;通常用于做事件处理函数&#xff0c;或自己封装的自定义函数。 computed&#xff1…

Ubuntu服务器创建新用户及解决新用户登录Access denied问题

目录 Ubuntu服务器创建新用户及解决新用户登录Access denied问题创建账号步骤创建用户只创建用户添加用户到sudo组 允许账号远程连接重启ssh服务 删除账号要删除用户而不删除用户文件如果要删除并且删除用户的家目录和邮件 查询指令查看所有用户查询特定用户账户信息查看用户组…

Java中面向对象三大特征(封装、继承、多态)

目录 一、封装 1.1 封装的意义 1.2 如何进行封装 二、继承 2.1 继承的意义 2.2 如何继承 2.3 继承的优点 2.4 继承的缺点 三、多态 3.1 多态的定义 3.2 多态的使用要求 一、封装 所谓封装就是将对象的属性隐藏起来&#xff0c;不让外界直接访问&#xff0c;而是通过…

【Micropython Pitaya Lite教程】key按键与EXTI中断

文章目录 前言一、按键的使用1.1 按键的简介1.2 读取按键的高低电平 二、EXIT外部中断2.1 EXIT外部中断简介2.2 外部中断基础知识2.3 设置外部中断2.4 示例代码 总结 前言 Micropython Pitaya Lite开发板提供了丰富的功能和灵活的扩展性&#xff0c;其中包括了按键&#xff08…

Python 全栈系列241 GFGo Lite迭代

说明 随着整个算网开发逐渐深入&#xff0c;各个组件、微服务的数量、深度在不断增加。由于算网是个人项目&#xff0c;我一直按照MVP(Minimum Viable Product )的原则在推进。由于最初的时候对架构、算法和业务的理解并没有那么深刻&#xff0c;所以MVP的内容还是在不断变化&…

精准医疗中的图像识别技术:从诊断到治疗的新变革

在精准医疗中&#xff0c;图像识别技术的应用正在从诊断到治疗带来一场新的变革。这种技术通过深度学习和计算机视觉算法&#xff0c;能够分析和解释医学图像&#xff0c;如X射线、CT扫描、MRI等&#xff0c;从而帮助医生更准确地诊断疾病&#xff0c;制定更个性化的治疗方案。…

IoTDB 入门教程 基础篇①——时序数据库为什么选IoTDB ?

文章目录 一、前文二、性能排行第一三、完全开源四、数据文件TsFile五、乱序数据高写入六、其他七、参考 一、前文 IoTDB入门教程——导读 关注博主的同学都知道&#xff0c;博主在物联网领域深耕多年。 时序数据库&#xff0c;博主已经用过很多&#xff0c;从最早的InfluxDB&a…

跟我学C++中级篇——const和constexpr的使用

一、从例程介绍 已经不同的篇章里介绍和分析过const及constexpr&#xff0c;特别对于后者&#xff0c;从c11到c14直到c17甚至以后&#xff0c;功能都不断的在完善。那么这么多复杂的应用如何搞清楚呢&#xff1f;下面先从代码看起&#xff1a; #include <iostream>void…

Linux基础之yum和vim

目录 一、软件包管理器yum 1.1 软件包的概念 1.2 软件包的查看 1.3 软件包的安装和删除 二、Linux编辑器之vim 2.1 vim的基本概念 2.2 正常模式&#xff08;命令模式&#xff09; 2.3 底行模式 2.4 输入模式 2.5 替换模式 2.6 视图模式 2.7 总结 一、软件包管理器yu…

MATLAB可视化图形绘制详解

图形常见的修饰命令 ①曲线修饰 曲线修饰包括曲线的顔色、线型和标示符号的设置。曲线修饰的命令格式如下。 plot(x,y,option):option定义了曲线的颜色、线型和标示符号。 MATLAB曲线修饰的各种选项见表 举例&#xff1a; x-2*pi:pi/50:2*pi; y1x.^2;y2cos(2*X);y3y1.*y2…

ctfshow web入门 php反序列化 web254--web259

web 254 只要传入的值与其类中的值相等即为true就有flag usernamexxxxxx&passwordxxxxxx web255 序列化和反序列化就像是把物品放进盒子和从盒子里取出物品的过程一样&#xff0c;只是在计算机编程中&#xff0c;我们是针对数据进行的操作。 这一题就是要把cookie进行序…

【Python项目】基于DJANGO的【基于语音识别的智能垃圾分类系统】

技术简介&#xff1a;使用Python技术、DJANGO框架、MYSQL数据库等实现。 系统简介&#xff1a;用户们可以在系统上面录入自己的个人信息&#xff0c;录入后还可以对信息进行修改&#xff0c;网站可以对用户上传的音频文件进行识别&#xff0c;然后进行垃圾分类。 背景&#xf…

【竞技宝jjb.lol】LOL:TES顺利晋级却暴露问题

北京时间2024年5月5日,英雄联盟2024MSI季中赛正在如火如荼的进行之中,目前入围赛阶段的比赛已经进入尾声,入围赛实力最强的两支战队T1、TES都已经顺利晋级淘汰赛阶段,在昨天的比赛结束之后,A组的FLY、PSG,B组的FNC、GAM将争夺剩下的两个出线名额。 回顾这次入围赛中,T1和TES的比…

课题学习(二十三)---三轴MEMS加速度计芯片ADXL372

声明&#xff1a;本人水平有限&#xff0c;博客可能存在部分错误的地方&#xff0c;请广大读者谅解并向本人反馈错误。 一、基础配置 测量范围-200g-200g&#xff0c;分辨率为12位&#xff0c; V s 、 V D D I / O V_s、V_{DDI/O} Vs​、VDDI/O​范围为1.6V-3.5V 1.1 引脚配…

第20天 多线程

多线程 cpu一次只能处理一条指令&#xff0c;所谓同时是因为人反应不过来 分为多个时间片段&#xff0c;尽可能平均分配给每一个线程 线程的创建 &#xff1a; 第1种方法&#xff1a;继承thread并重写run方法 psvm{ Thread t1 new MyThread1(); Thread t2 new MyThread2()…

u盘格式化后电脑读不出来怎么办?u盘格式化的东西还能恢复吗

随着科技的快速发展&#xff0c;U盘已成为我们日常生活和工作中不可或缺的数据存储工具。然而&#xff0c;有时我们可能会遇到U盘格式化后电脑无法读取的情况&#xff0c;或是误格式化导致重要数据丢失。面对这些问题&#xff0c;我们该如何应对&#xff1f;本文将为您详细解答…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之七 简单进行人脸检测并添加面具特效实现

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之七 简单进行人脸检测并添加面具特效实现 目录