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

C语言 每日一题 PTA 10.29 day7

1.特殊a串数列求和

给定两个均不超过9的正整数a和n,要求编写程序求a + aa + aaa++⋯ + aa⋯a(n个a)之和。
输入格式:
输入在一行中给出不超过9的正整数a和n。
输出格式:
在一行中按照“s = 对应的和”的格式输出。

思路

n每加1,多一个值,将原数字乘以10再加个位数的数,最终循环结束得到结果

代码实现

int main()
{int a, n;int A = 0;int sum = 0;printf("请您输入两个数,中间用空格隔开\n");scanf("%d %d", &a, &n);int i = 0;for (i = 0; i < n; i++) {A = A * 10 + a;sum += A;}printf("s=%d", sum);return 0;
}

运行结果

 2.猜数字游戏

猜数字游戏是令游戏机随机产生一个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”则结束。 

思路  

从键盘输入一个数,通过time函数,使电脑产生一个随机数,设置猜测的最大次数,当次数小于这个次数时候,则继续猜测,直到正确为止

要点

time()函数 头文件 #include <time.h>
函数说明:此函数会返回从公元1970年1月1日的UTC时间从0时0分0秒算起到现在所经过的秒数(即格林尼治时间1970年1月1日00:00 : 00到当前时刻的时长,
    时长单位是秒。如果t并非空指针的话,此函数也会将返回值存在t指针所指的内存。返回值:成功则返回秒数,失败则返回((time_t)-1)值,错误原因存于error中。
从声明中可以看出,time()函数返回值的数据类型是time_t。传递给time()函数的参数是指向time_t数据类型的指针。
time函数的使用方式:1.t1=time(NULL)/t1=time(0);
                                    2.将变量t2的地址作为实参传给time()函数,函数自动把结果传给t2,不需要额外的赋值语句

代码实现

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{srand(time(NULL));int a = rand() % 100 + 1;//a是游戏机随机生成的数int N = 10;//N是猜测的最大次数int count = 1, t;do{int b;scanf("%d", &b);t = b;if (b <= 0)continue;if (b > a){printf("Too big\n");}else if (b < a){printf("Too small\n");}else{printf("Good Guess!\n");}count++;} while (count <= N && t >= 0 && t != a);return 0;
}

运行结果

3. 兔子繁衍问题

一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。
假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?
输入格式 :
输入在一行中给出一个不超过10000的正整数N。
输出格式 :
在一行中输出兔子总数达到N最少需要的月数。

思路

一对新生兔子前两个月不繁殖,从第三个月开始繁殖一对兔子,兔子总数*2,而新生兔子前两个月不进行繁殖,从第三个月继续开始繁殖,问什么时候可以繁殖到超过键盘输入的兔子总数,需要通过循环,在循环的过程中注意新生兔子前两个月不进行繁殖

方法一:循环遍历

代码实现

#include<stdio.h>
int main()
{int n, m = 1, t = 1, count = 2;//count表示需要的月份,n是键盘输入的数字,m是当前兔子总数,t是新生兔子数目int sum = 1;     //sum表示兔子总数printf("输入要达到的兔子总对数n(n<=10000):"); //输入提示scanf("%d", &n);if (n == 1) {printf("1");}else {while (sum < n) {count++;t = m;m = sum;    //m存放本次循环中的sum值,用于下一次赋值给tsum = sum + t;}printf("需要的月数:%d\n", count);}return 0;
}

运行结果

方法二:斐波那契数列 

代码实现

#include<stdio.h>
int main()
{int a[100],i,n;               //这里应该22个就够用了scanf("%d",&n);               a[0]=0;a[1]=1;if(n==1)                       //特例{printf("1");return 0;                 //提前结束}for(i=2;;i++){a[i]=a[i-1]+a[i-2];         //前两项之和等于第三项if(a[i]>=n)break;}printf("%d",i);return 0;
}

运行结果 

相关文章:

C语言 每日一题 PTA 10.29 day7

1.特殊a串数列求和 给定两个均不超过9的正整数a和n&#xff0c;要求编写程序求a aa aaa⋯ aa⋯a&#xff08;n个a&#xff09;之和。 输入格式&#xff1a; 输入在一行中给出不超过9的正整数a和n。 输出格式&#xff1a; 在一行中按照“s 对应的和”的格式输出。 思路 n…...

持续集成部署-k8s-服务发现-Ingress 路径匹配与虚拟主机匹配

持续集成部署-k8s-服务发现-Ingress 路径匹配与虚拟主机匹配 1. 安装 Ingress-Nginx2. 创建要代理的 Service3. 创建一个新的 Ingress-Nginx1. 安装 Ingress-Nginx 要使用 Ingress-Nginx 首先第一步是需要先安装它,安装的步骤可以参考:持续集成部署-k8s-服务发现-Ingress 2…...

selenium工作原理和反爬分析

一、 Selenium Selenium是最广泛使用的开源Web UI(用户界面)自动化测试套件之一&#xff0c;支持并行测试执行。Selenium通过使用特定于每种语言的驱动程序支持各种编程语言。Selenium支持的语言包括C#&#xff0c;Java&#xff0c;Perl&#xff0c;PHP&#xff0c;Python和Ru…...

windows电脑安装系统后固态硬盘和机械硬盘的盘符号顺序显示错乱,解决方法

一、场景 由于电脑磁盘是SSD固态硬盘自己拓展的1T机械硬盘组成&#xff0c;固态硬盘分为C、D两个盘区&#xff0c;机械硬盘分为E、F两个盘区。为了提升运行速度&#xff0c;系统安装在C盘&#xff0c;安装完成后按照习惯盘区顺应该为C、D、E、F&#xff0c;但实际情况却是D、E…...

自定义控件的子控件布局(onLayout()方法)

onLayout()方法用于指定布局中子控件的位置&#xff0c;该方法通常在自定义的ViewGroup容器中重写。 重写onLayout()方法中的常用方法&#xff1a; getChildCount() 获取子控件数量 getChildAt( int index ) 获取指定index的子控件&#xff0c;返回View view.getVisibilit…...

vscode提取扩展出错xhr

在 Visual Studio Code (VSCode) 中提取扩展出现 XHR 错误通常意味着在下载扩展或进行扩展管理操作时出现了网络请求问题。XHR (XMLHttpRequest) 是一种用于在浏览器中进行 HTTP 请求的技术&#xff0c;通常用于获取数据或资源。在 VSCode 中&#xff0c;它也可用于管理扩展的下…...

Docker 笔记(上篇)

Docker 概述 Docker 概念 Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中&#xff0c;然后发布到任何流行的 Linux或Windows操作系统的机器上&#xff0c;也可以实现虚拟化。容器是完全使用沙箱机制&#xff0c;相互之…...

python自动化测试(六):唯品会商品搜索-练习

目录 一、配置代码 二、操作 2.1 输入框“运动鞋” 2.2 点击搜索按钮 2.3 选择品牌 2.4 选择主款 2.5 适用性别 2.6 选择尺码 2.7 选择商品&#xff1a;&#xff08;通过css的属性去匹配&#xff09; 2.8 点击配送地址选项框 一、配置代码 # codingutf-8 from selen…...

深度强化学习用于博弈类游戏-基础测试与说明【1】

深度强化学习用于博弈类游戏-基础【1】 1. 强化学习方法2. 强化学习在LOL中的应⽤2.1 环境搭建2.2 游戏特征元素提取1)小地图人物位置:2)人物血量等信息3)在整个图像上寻找小兵、防御塔的位置4)自编码器提取3. 策略梯度算法简介参考资料1. 强化学习方法 伴随着人工智能的潮起…...

通过requests库使用HTTP编写的爬虫程序

使用Python的requests库可以方便地编写HTTP爬虫程序。以下是一个使用requests库的示例&#xff1a; import requests# 发送HTTP GET请求 response requests.get("http://example.com")# 检查响应状态码 if response.status_code 200:# 获取响应内容html response.…...

550MW发电机变压器组继电保护的整定计算及仿真

摘要 电力系统继电保护设计是根据系统接线图及要求选择保护方式&#xff0c;进行整定计算&#xff0c;电力系统继电保护的设计与配置是否合理直接影响到电力系统的安全运行。如果设计与配置不当&#xff0c;保护将不能正确工作&#xff0c;会扩大事故停电范围&#xff0c;造成…...

Linux 命令|服务器相关

1. 在公共 linux 上创建 python 虚拟环境 【精选】在公共Linux服务器上创建自己的python虚拟环境_服务器创建自己的环境-CSDN博客 2. 查看现存的状态&#xff0c;看有没有程序在跑 nvidia-smi命令详解-CSDN博客 3. 上传本地文件到服务器 在本地 Mac 计算机的终端中&#x…...

node 第十三天 express初见

express概念 Fast, unopinionated, minimalist web framework for Node.js 快速、独立、极简的 Node.js Web 框架。 express相当于前端的jquery, 在不更改不侵入原生node的基础上封装了大量易用且实用的服务端api, express框架的封装原理就是前面第十天我们自己封装的简易服务器…...

Python selenium模块简介

视频版教程&#xff1a;一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium 有些网站的数据是js动态渲染的&#xff0c;我们无法通过网页源码直接找到数据&#xff0c;只能通过找接口方式来获取数据&#xff0c;但是很多时候&#xff0c;数据又是json格式的…...

DIY相机(一)libcamera库

相机选型 DIY相机首先是要确定使用的相机型号。兼容树莓派&#xff0c;画质好一些的&#xff0c;目前主要有两款&#xff1a;一是Raspberry Pi Camera Module 3&#xff0c;二是Raspberry Pi HQ Camera。 下图是Raspberry Pi Camera Module 3的相关特性。支持自动对焦和HDR等…...

PHP简单实现预定义钩子和自定义钩子

在PHP中&#xff0c;钩子&#xff08;Hooks&#xff09;是一种机制&#xff0c;允许开发人员在特定的时机插入自定义代码。通过使用钩子&#xff0c;开发人员可以在应用程序的特定事件发生时执行自定义的功能或逻辑 钩子有两种类型&#xff1a;预定义钩子和自定义钩子。 预定…...

笔记本电脑的摄像头找不到黑屏解决办法

这种问题一般来说就是缺少驱动&#xff0c;就要下载驱动。 问题&#xff1a; 解决办法&#xff1a; 1.进入联想官网下载驱动 网站&#xff1a;https://newsupport.lenovo.com.cn/driveDownloads_index.html?v9d9bc7ad5023ef3c3d5e3cf386e2f187 2.下载主机编号检测工具 3.下…...

【Git】HEAD detached from xxx 问题及解决方案

问题背景 最近用git的时候遇到了一个问题&#xff0c;场景是这样的。 我有一个分支main&#xff0c;其中有两个commit A和B&#xff0c;A是最新commit&#xff0c;B是历史commit。我先切到B看了看之前的代码&#xff0c;然后切到A&#xff0c;并进行了一些代码修改&#xff0…...

Cannot connect to the Docker

执行docker基础命令失败&#xff01; Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 原因&#xff1a;docker服务没有启动。 解决方法&#xff1a;执行 systemctl start docker 即可。...

校园物业报修小程序开发笔记一

背景 校园规模和复杂性&#xff1a; 大型学校和校园通常拥有众多的建筑物、设施和设备&#xff0c;需要有效的维护和报修系统&#xff0c;以满足学生、教职员工和校园管理人员的需求。 学生和员工需求&#xff1a; 学生和员工在校园内可能遇到各种维修问题&#xff0c;如故障的…...

用户登录前后端开发(一个简单完整的小项目)——SpringBoot与session验证(带前后端源码)全方位全流程超详细教程

&#x1f9f8;注&#xff1a;不要看我的文件多&#xff0c;那是我的其他项目&#xff0c;这个项目所用的文件我会全部用红框框起来&#xff0c;没框的部分不用管&#xff0c;前端两个文件&#xff0c;后端一个文件 &#x1f4dc; 目录 首先&#xff0c;定义前后端交互接口 然…...

FFmpeg5.1.3编译动态库踩坑之旅(基于Linux虚拟机)

准备工作 环境准备 1.Windows安装Oracle VM VirtualBox 7.0.10&#xff0c;安装ubuntu-22.04.3。 坑一&#xff1a;无法往虚拟机里拖放复制文件&#xff0c;解决办法&#xff1a;登录Ubuntu虚拟机时切换到xorg方式登录&#xff0c;参考地址&#xff1a;Ubuntu Desktop 22.04…...

【语义分割】语义分割概念及算法介绍

文章目录 一、基本概念二、研究现状2.1 传统算法2.2 深度学习方法 三、数据集及评价指标3.1 常用数据集3.2 常用指标 四、经典模型参考资料 一、基本概念 语义分割是计算机视觉中很重要的一个方向。不同于目标检测和识别&#xff0c;语义分割实现了图像像素级的分类。它能够将…...

基于RK3568高性价比全国产EMS储能解决方案(一)概述

储能产业链框架 储能产业链可分为上游“原材料及生产设备”、中游“储能系统”、下游“储能场景应用及后市场服务”。 图1 储能产业链框架图 产业链中游的“储能电池系统”主要包括“能量管理系统(EMS)”、“电池管理系统(BMS)”、“储能逆变器(PCS)”、“电池组”四个部分。…...

3 Go的基础语法

概述 在上一节的内容中&#xff0c;我们介绍了第一个Go程序&#xff0c;包括&#xff1a;安装Go环境、编写第一个Go程序、编译并运行程序等。在本节中&#xff0c;我们将介绍Go的基础语法。Go是一门简洁和优雅的语言&#xff0c;有自己特殊的一些语法规则。因此&#xff0c;在介…...

Redis之Lua脚本讲解

这里写自定义目录标题 1 Lua1.1 简介1.1.1 注释1.1.2 变量1.1.3 数据类型1.1.4 控制结构1.1.5 函数1.1.6 模块1.1.7 字符串操作1.1.8 错误处理1.1.9 标准库 1.2 Redis和Lua脚本结合优点1.3 Lua脚本应用和调试1.3.1 缓存更新1.3.2 原子操作1.3.3 数据处理1.3.4 分布式锁1.3.5 Re…...

redis archive github

https://github.com/redis/redis/releases/tag/7.2.2https://github.com/redis/redis/releases/tag/7.2.2...

3台Centos7快速部署Kafka集群

首先&#xff0c;我要说&#xff0c;Kafka 是强依赖于 ZooKeeper 的&#xff0c;所以在设置 Kafka 集群之前&#xff0c;我们首先需要设置一个 ZooKeeper 集群。 部署ZooKeeper需要安装jdk yum install java-1.8.0-openjdk 安装完以后 下面是详细的步骤&#xff1a; 1. 安装和…...

最小栈(C++解法)

题目 设计一个支持 push &#xff0c;pop &#xff0c;top 操作&#xff0c;并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元素。i…...

Python 算法高级篇:堆排序的优化与应用

Python 算法高级篇&#xff1a;堆排序的优化与应用 引言 1. 什么是堆&#xff1f;2. 堆的性质3. 堆排序的基本原理4. 堆排序的 Python 实现5. 堆排序的性能和优化6. 堆排序的实际应用7. 总结 引言 堆排序是一种高效的排序算法&#xff0c;它基于数据结构中的堆这一概念。堆排序…...