【PTA-C语言】编程练习3 - 循环结构Ⅱ
- 如果代码存在问题,麻烦大家指正 ~ ~
- 有帮助麻烦点个赞 ~ ~
编程练习3 - 循环结构(9~15)
- 7-9 特殊a串数列求和(分数 15)
- 7-10 穷举法搬运砖块问题(分数 15)
- 7-11 数字金字塔(分数 15)
- 7-12 输出N以内的所有素数(分数 15)
- 7-13 猜数字游戏(分数 15)
- 7-14 外星人的一天(分数 15)
- 7-15 整数的分类处理(分数 15)
7-9 特殊a串数列求和(分数 15)
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。
输入格式:
输入在一行中给出不超过9的正整数a和n。
输出格式:
在一行中按照“s = 对应的和”的格式输出。
输入样例:
2 3
输出样例:
s = 246
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include <stdio.h>
int main()
{int a, b, sum=0, i, x=0;scanf("%d %d", &a, &b);for (i = 1; i <= b; i++) {x = x*10 + a;sum += x;}printf("s = %d", sum);return 0;
}
7-10 穷举法搬运砖块问题(分数 15)
这是中国古典算术问题,某工地需要搬运砖块,已知男人一人搬3块,女人一人搬2块,小孩两人搬1块。有多少种搬法用N人正好搬N块砖?
输入格式:
输入正整数N。
输出格式:
输出所有满足条件的搬法,每种搬法占一行。
每行按如下格式依次输出该搬法中男人、女人、小孩的人数,按男人人数的递增顺序输出,中间用空格间隔(=前后没有多余的空格,行末也无空格)。
men=男人数 women=女人数 child=小孩数
若没有满足条件的搬法,则输出"No solution!"
输入样例1:
45
输出样例1:
men=0 women=15 child=30
men=3 women=10 child=32
men=6 women=5 child=34
men=9 women=0 child=36
输入样例2:
1
输出样例2:
No solution!
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include <stdio.h>
int main()
{int n, i, j, k, t=0;scanf("%d", &n);for(i=0; i<=n/3; i++)for(j=0; j<=n/2; j++){k = (n-i*3-j*2)*2;if(i+j+k == n) {printf("men=%d women=%d child=%d\n", i, j, k);t=1;}}if(t==0)printf("No solution!\n");return 0;
}
7-11 数字金字塔(分数 15)
输入一个正整数repeat (repeat<10),做repeat次下列运算:
- 输入一个正整数n(n<10),输出n行数字金字塔。
输出时使用以下语句:
printf(" ");printf("%d ", i);printf("\n");
输入格式:
输入在第1行中给出1个正整数repeat(repeat<10)
接下来repeat行,每行给出一个正整数n(n<10)
输出格式:
按照对应顺序的n值,依次输出repeat个数字金字塔
(n行数字金字塔的格式如样例所示,注意:每个数字后面跟一个空格。)
输入样例:
2
5
2
输出样例:
1 2 2 2 3 3 3 3 3 4 4 4 4 4 4 4
5 5 5 5 5 5 5 5 5 1
2 2 2
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include<stdio.h>
int main()
{int repeat, i=0, n, m, p, q;scanf("%d", &repeat);for(i=0; i<repeat; i++){scanf("%d", &n);for(m=1; m<=n; m++){for(q=n; q>m; q--)printf(" ");for(p=1; p<=2*m-1; p++)printf("%d ", m);printf("\n");}}return 0;
}
7-12 输出N以内的所有素数(分数 15)
编程找出N(2≤N≤500)以内(即小于等于N)的所有素数。
输入格式:
输入整数N(2≤N≤500)。
输出格式:
每8个一行输出N以内的所有素数。注意每个数据均占5列,且采用右对齐。
输入样例1:
50
输出样例:
2 3 5 7 11 13 17 1923 29 31 37 41 43 47
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include <stdio.h>
#include <math.h>
int isprime(int n)
{if(n == 1) return 0;for(int i = 2; i <= sqrt(n); i++) {if(n % i == 0)return 0;}return 1;
}
int main()
{int i, n, k=0;scanf("%d", &n);for(i=1; i<=n; i++)if(isprime(i)) {k++;if(k == 8) {printf("%5d\n", i);k=0;} else printf("%5d", i);}return 0;
}
7-13 猜数字游戏(分数 15)
猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包括第N次)猜到该数,则提示“Good Guess!”;如果超过N次都没有猜到,则提示“Game Over”,并结束程序。如果在到达N次之前,用户输入了一个负数,也输出“Game Over”,并结束程序。
输入格式:
输入第一行中给出两个不超过100的正整数,分别是游戏机产生的随机数、以及猜测的最大次数N。最后每行给出一个用户的输入,直到出现负数为止。
输出格式:
在一行中输出每次猜测相应的结果,直到输出猜对的结果或“Game Over”则结束。
输入样例:
58 4
70
50
56
58
60
-2
输出样例:
Too big
Too small
Too small
Good Guess!
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include <stdio.h>
int main()
{int i, a, n, num = 0, t;scanf("%d %d", &a, &n);if (n == 0 || n <= 0) {printf("Game Over\n");return 0;}for(i = 1; ;i++) {scanf("%d", &t);num++;if (num > n || t < 0) {printf("Game Over\n");return 0;}if (t > a) printf("Too big\n");if (t < a) printf("Too small\n");if (t == a && num == 1) {printf("Bingo!\n");break;}if (t == a && num > 1 && num <= 3) {printf("Lucky You!\n");break;}if (t == a && num > 3 && num <= n) {printf("Good Guess!\n");break;}}return 0;
}
7-14 外星人的一天(分数 15)
地球上的一天是 24 小时。但地球上还有一些精力和勤奋度都远超一般人的大神级人物,他们的“一天”是以 48 小时为周期运转的,这种人被人们尊称为“外星人”。比如普通人的周一早 8:30 是外星人的周一早 4:15;普通人的周二早 9:21 是外星人的周一下午 4:40 —— 对外星人而言,一周的工作时间只有三天(即普通人的周一至周六),周日他们会蒙头大睡恢复体力,时间对他们是没有意义的。
在外星人眼里,地球人的时钟对他们而言实在是太不方便了。本题就请你为外星人们实现一款专用时钟。
输入格式:
输入在一行中给出一个不超过 10 的正整数 N,随后 N 行,每行给出一个地球人的时刻,格式为:Day hh:mm,其中Day是 [0,6] 区间内的整数,顺序代表周日至周六;hh是 24 小时制的小时数,是 [0,23] 区间内的整数;mm是分钟数,是 [0,59] 区间内的整数。
输出格式:
对输入的每一行地球人时刻,输出对应的外星人时间,格式与输入相同。其中Day在 [0,3] 区间内,对应周日到周三;分钟数若不是整数,则向下取整。注意:由于周日的时间对外星人没有意义,所以直接输出地球人的时间即可。
输入样例:
3
1 08:30
2 09:21
0 21:07
输出样例:
1 04:15
1 16:40
0 21:07
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include <stdio.h>
int main(){int day, d, h, m;scanf("%d", &day);while(day--) {scanf("%d %02d:%02d", &d, &h, &m);if(d == 0) {printf("%d %02d:%02d\n", d, h, m);continue;} else if (d % 2 == 1) {d = d/2 + 1;} else {d = d/2;h += 24;}m = ((h % 2)*60 + m) / 2;h /= 2;printf("%d %02d:%02d\n", d, h, m);}return 0;
}
7-15 整数的分类处理(分数 15)
给定 N 个正整数,要求你从中得到下列三种计算结果:
- A1 = 能被 3 整除的最大整数
- A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数
- A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)
输入格式:
输入首先在第一行给出一个正整数 N,随后一行给出 N 个正整数。所有数字都不超过 100,同行数字以空格分隔。
输出格式:
在一行中顺序输出 A1、A2、A3的值,其间以 1 个空格分隔。如果某个数字不存在,则对应输出NONE。
输入样例 1:
8
5 8 7 6 9 1 3 10
输出样例 1:
9 3 6.5
输入样例 2:
8
15 18 7 6 9 1 3 10
输出样例 2:
18 3 NONE
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
参考代码
#include <stdio.h>
int main()
{int i, n, m, a1=0, a2=0, cnt3=0;double sum=0.0;scanf("%d", &n);for(i=0; i<n; i++) {scanf("%d", &m);if(m%3 == 0) {if(a1<m) a1=m;}else if(m%3 == 1)a2++;else if(m%3 == 2) {cnt3++;sum += m;}}if(a1) printf("%d ", a1);else printf("NONE ");if(a2) printf("%d ", a2);else printf("NONE ");if(cnt3) printf("%.1f", sum/cnt3);else printf("NONE");return 0;
}
相关文章:
【PTA-C语言】编程练习3 - 循环结构Ⅱ
如果代码存在问题,麻烦大家指正 ~ ~有帮助麻烦点个赞 ~ ~ 编程练习3 - 循环结构(9~15) 7-9 特殊a串数列求和(分数 15)7-10 穷举法搬运砖块问题(分数 15)7-11 数字金字塔(分数 15&…...
Google Chrome 下载 (离线版)
1 访问网址 Google Chrome 网络浏览器 2 点击 下载Chrome 3 直接运行 ChromeStandaloneSetup64.exe 其他: ####################### 谷歌浏览器 (Google Chrome) 最新版离线安装包下载 https://www.iplaysoft.com/tools/chrome/#google_vignette Google Chrome …...
2023年GopherChina大会-核心PPT资料下载
一、峰会简介 自 Go 语言诞生以来,中国便是其应用最早和最广的国家之一,根据 Jetbrains 在 2021 年初做的调查报告,总体来说目前大概有 110 万专业的开发者 选择 Go 作为其主要开发语言。就其全球分布而言, 居住在亚洲的开发者最多ÿ…...
从源代码出发,Jenkins 任务排队时间过长问题的解决过程
最近开发了一个部署相关的工具,使用 Jenkins 来构建应用。Jenkins 的任务从模板中创建而来。每次部署时,通过 Jenkins API 来触发构建任务。在线上运行时发现,通过 API 触发的 Jenkins 任务总是会时不时在队列中等待较长的时间。某些情况下的…...
openssl 生成CA及相关证书
实验环境:ubuntu18.04-desktop 获取openssl.cnf配置文件 # 这个返回的路径,不一定被使用了(经测试,ubuntu18下的openssl似乎未加载任何配置文件) openssl version -d生成私钥文件(pem) # 生成私钥 # genrsa…...
App测试之App日志收集及adb常用命令
文章目录 前言一、adb是什么1.APP测试收集手机日志常用的工具2.adb下载与安装3.ADT/SDK/ADB是什么4.adb连接真机 二、adb常用命令三、android系统日志文件1.logcat日志文件2.logcat日志文件分析 四、分析crash & ANR 日志1.发生crash如何分析2.发生ANR如何分析 总结扩展&am…...
【Java面试——并发基础、并发关键字】
3.1 并发基础 Java 并发 - 理论基础Java 并发 - 线程基础 多线程的出现是要解决什么问题的? 本质什么? CPU、内存、I/O 设备的速度是有极大差异的,为了合理利用 CPU 的高性能,平衡这三者的速度差异,计算机体系结构、操作系统、编译程序都…...
如何使用 Java 在Excel中创建下拉列表
下拉列表(下拉框)可以确保用户仅从预先给定的选项中进行选择,这样不仅能减少数据输入错误,还能节省时间提高效率。在MS Excel中,我们可以通过 “数据验证” 提供的选项来创建下拉列表,但如果要在Java程序中…...
Python安装步骤介绍
本文将介绍Python安装的详细步骤如下: 下载 python安装 python配置环境变量(安装时勾选配置环境变量的则无需此步骤) 一、python下载 官网:Download Python | Python.org 根据电脑位数下载所需的版本 二、Python安装 1.打开安…...
学习80min快速了解大型语言模型(ChatGPT使用)笔记
学习李宏毅:80min快速了解大型语言模型(ChatGPT使用)笔记 链接:https://www.youtube.com/watch?vwG8-IUtqu-s 1、创建一个属于自己的GPT 目前,GPT4具备一个功能,Create a GPT。利用这个功能可以创建一个…...
SQL错题集1
1.找出选修课程成绩最差的选课记录 注: 聚合函数只能用在group by和()括号中 找最值可用排序order bylimit 1 2. 查询选修成绩 合格的课程 超过2门的 学生编号 3.删除姓名为"LiMing"的学生信息 注: 删除一整行信息&…...
uniapp运行到安卓基座app/img标签不显示
img是html中的标签,他也是一个单标签 image属于服务器控件,是个双标签 问题:uniapp运行到app安卓基座后图片无法显示 原因:自己使用了img标签,而且输入路径无提示,img标签导致图片不显示 解决ÿ…...
vscode非常好用的扩展插件
1、Code Spell Checker: 帮助我们检查单词是否拼写错误,检查规则遵循驼峰拼写法。 2、Color Highlight:高亮显示颜色值 3、Svg Preview: 实时预览svg图片(修改width、height、fill等值来实时查看效果) 4、…...
一文弄懂BFS【广度优先搜索(Breadth-First Search)】
BFS,全名为广度优先搜索(Breadth-First Search),是一种用于图或树的遍历或搜索的算法。它的主要思想是由节点自身开始向它的邻居节点新进展开搜索,因此也常被形象地称为“层序遍历”。 BFS 基本思想 BFS 工作原理是,从开始节点开…...
深度学习记录--logistic回归函数的计算图
计算图用于logistic回归函数 先回顾一下单一样本的logistic回归损失函数的公式,公式如下: 将logistic函数用计算图表示出来(以两个基础量为例),计算图如下: 前向传播已经完成,接下来完成后向传播 运用链式法则依次求…...
Java基本数据类型详解
✨个人主页:全栈程序猿的CSDN博客 💨系列专栏:Java从入门到精通 ✌座右铭:编码如诗,Bug似流星,持续追求优雅的代码,解决问题如同星辰般自如 Java是一种强类型语言,数据类型在程序中起…...
第十五届蓝桥杯模拟赛(第二期)
大家好,我是晴天学长,本次分享,制作不易,本次题解只用于学习用途,如果有考试需要的小伙伴请考完试再来看题解进行学习,需要的小伙伴可以点赞关注评论一波哦!后续会继续更新第三期的。Ǵ…...
命令模式-C++实现
命令模式是一种行为型设计模式,它将请求封装成一个对象,从而能使你可以用不同的请求对客户端进行参数化。该模式允许请求的发送者和接收者进行解耦,发送者不需要知道接收者的信息,只需要通过命令对象来与它进行交互。 命令模式有…...
3dMax拼图生成工具Puzzle2D使用教程
Puzzle2D for 3dsMax拼图生成工具使用教程 Puzzle2D简介: 2D拼图随机生成器(英文:Puzzle2D) ,是一款由#沐风课堂#用MAXScript脚本语言开发的3dsMax建模小工具,可以随机创建2D可编辑样条线拼图图形。可批量…...
git报错invalid object xxx和unable to read tree xxxxxx
电脑出问题了,导致git仓库像是被损坏了一样,执行git status就会报错unable to read ree,无法正常提交代码至仓库,原因是本地代码仓库.git文件损坏了,无法找到正确的提交历史和路径。 找到了一个解决办法: …...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...
提升移动端网页调试效率:WebDebugX 与常见工具组合实践
在日常移动端开发中,网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时,开发者迫切需要一套高效、可靠且跨平台的调试方案。过去,我们或多或少使用过 Chrome DevTools、Remote Debug…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
前端高频面试题2:浏览器/计算机网络
本专栏相关链接 前端高频面试题1:HTML/CSS 前端高频面试题2:浏览器/计算机网络 前端高频面试题3:JavaScript 1.什么是强缓存、协商缓存? 强缓存: 当浏览器请求资源时,首先检查本地缓存是否命中。如果命…...
