赛码网-打字100%AC代码(C语言)

news2024/10/7 12:21:39

————————————————————————————————————
⏩ 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的大三学生。
⏩最近在准备秋招,一直在练习编程。
⏩本篇文章对赛码网的打字题目做一个详解。
⏩感谢你的阅读,不对的地方欢迎指正。
————————————————————————————————————
题目:
在这里插入图片描述
分析:
只要判断出在输出本个字符时确认是使用了shift还是Capslock就可以了。
当出现中间大于等于两个连续的大写或者小写字母时我们就得使用Capslock,当出现一个时可以用shiift。
看代码:

#include "stdio.h"
int sgn(char c)
{
    if(c >= 'A' && c <='Z') return 1;
    else if(c >= 'a' && c <= 'z') return -1;
    return 0;
}
int main()
{
    int T,Cap = 0;
    char s[105];
    scanf("%d",&T);
    for(int i = 0; i < T;i++)
    {
        int j = 0,count = 0;
        scanf("%s",s);
//        printf("%s\n",s);
        for(;s[j];j++){
        	Cap = 0;
            count ++;
            if(!sgn(s[j])) continue;
            else if(!s[j+1]){
            	if(Cap == 0 && sgn(s[j]) ==1) count++;
            	else if(Cap == 1 && sgn(s[j]) == -1) count++;
			}
            else if(Cap == 1) {
				if(sgn(s[j])== 1) ;
				else if(sgn(s[j]) == -1 && sgn(s[j+1]) == -1) {//连续两个使用Cap切换
					Cap = 0;//切换小写
					count++; 
				}
				else if(sgn(s[j]) == -1 && sgn(s[j+1]) == 1){//只有一个使用shift
					count++;
				}
            }
            else if(Cap == 0){
            	if(sgn(s[j]) == -1) ;
            	else if(sgn(s[j]) == 1 && sgn(s[j+1]) == 1){//连续两个使用Cap切换
            		count++;
            		Cap = 1;//切换大写 
				}
				else if(sgn(s[j]) == 1 && sgn(s[j+1]) == -1){//只有一个使用shift
					count++;
				}
			}
        }
        printf("%d\n",count);
    }
    return 0;
}

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

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

相关文章

ViSQOL、PESQ、mosnet等mos分打分工具和Polqa语音感知音质打分测评

原创&#xff1a;转载需附链接&#xff1a; https://blog.csdn.net/qq_37100442/article/details/132057139?spm1001.2014.3001.5502 一、背景 Mos分评价音质重要指标&#xff0c;最近也有很多机构和公司在研究适合自己的评价体系。目前Mos分主要分为主观评测和客观感知评价。…

49. 海豚记账簿软件(b站的一个小项目)

闲着也是闲着就跟着别人做了一个小项目 目录 1.需求和目标 2.整体功能描述 3.核心思路 4.全部代码 1.需求和目标 项目的需求&#xff0c;实现一个叫做“海豚记账簿”的基于命令行界面的家庭记账软件。 2.整体功能描述 这个软件相对简单&#xff0c;只需要基于命令行做纯…

【数据结构OJ题】移除元素

原题链接&#xff1a;https://leetcode.cn/problems/remove-element/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 方法一&#xff1a;暴力删除&#xff0c;挪动数据覆盖。即遍历整个nums[ ]数组&#xff0c;遇到值等于val的元素&#xff0c;就将整…

Eclipse如何自动添加作者、日期等注释

一、创建类时自动添加注释 1、Window->Preferences 2、Java->Code Syle->Code Templates->Code->New Java files->Edit->要添加的注释->Apply 二、选中要添加的类或者方法通过AltShiftJ快捷键添加 1、Window->Preferences 2、Java->Code Syle…

IP地址、网关、子网掩码

通过SSH将Ubuntu的盘映射到Windows下面去&#xff0c;以及在VsCode通过SSH Server或者在MobaXterm中通过SSH连接到远程ubuntu服务器&#xff0c;但由于之前Ubuntu的网络是自动连接的&#xff0c;IPv4经常会改变&#xff0c;就会导致上述三个远程连接都需要重新配置。 故由DHCP自…

ETHERCAT转PROFIBUS网关连接安川伺服支持EtherCAT总线吗

捷米JM-DP-ECT&#xff0c;是自主研发的一款PROFIBUS从站功能的通讯网关&#xff0c;它的主要功能是将ETHERCAT设备接入到PROFIBUS网络中。 JM-DP-ECT这个小小的网关可不简单&#xff0c;连接到PROFIBUS总线中做为从站使用&#xff0c;连接到ETHERCAT总线中做为从站使用。 1.2…

DAY03_Spring—SpringAOPAOP切入点表达式AOP通知类型Spring事务管理

目录 一 AOP1 AOP简介问题导入1.1 AOP简介和作用1.2 AOP中的核心概念 2 AOP入门案例问题导入2.1 AOP入门案例思路分析2.2 AOP入门案例实现【第一步】导入aop相关坐标【第二步】定义dao接口与实现类【第三步】定义通知类&#xff0c;制作通知方法【第四步】定义切入点表达式、配…

kafka-保证数据不重复-生产者开启幂等性和事务的作用?

1. 生产者开启幂等性为什么能去重&#xff1f; 1.1 场景 适用于消息在写入到服务器日志后&#xff0c;由于网络故障&#xff0c;生产者没有及时收到服务端的ACK消息&#xff0c;生产者误以为消息没有持久化到服务端&#xff0c;导致生产者重复发送该消息&#xff0c;造成了消…

SpringMVC -- REST风格开发,RESTful快速开发、RESTful注解开发

&#x1f40c;个人主页&#xff1a; &#x1f40c; 叶落闲庭 &#x1f4a8;我的专栏&#xff1a;&#x1f4a8; c语言 数据结构 javaweb 石可破也&#xff0c;而不可夺坚&#xff1b;丹可磨也&#xff0c;而不可夺赤。 REST 一、REST简介1.1REST风格简介 二、RESTful入门案例2.…

SpringBoot集成Logback日志

SpringBoot集成Logback日志 文章目录 SpringBoot集成Logback日志一、什么是日志二、Logback简单介绍三、SpringBoot项目中使用Logback四、概念介绍一、日志记录器Logger1.1、日志记录器对象生成1.2、记录器的层级结构1.3、过滤器1.4、logger设置日志级别1.5、java代码演示1.6、…

【资料分享】全志科技T507-H工业核心板规格书

1 核心板简介 创龙科技SOM-TLT507是一款基于全志科技T507-H处理器设计的4核ARM Cortex-A53全国产工业核心板&#xff0c;主频高达1.416GHz。核心板CPU、ROM、RAM、电源、晶振等所有元器件均采用国产工业级方案&#xff0c;国产化率100%。 核心板通过邮票孔连接方式引出MIPI C…

防火墙第四次作业

1. 什么是IDS&#xff1f; IDS是&#xff1a;入侵检测系统&#xff08;intrusion detection system&#xff0c;简称“IDS”&#xff09;是一种对网络传输进行即时监视&#xff0c;在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之…

K8s中的核心技术Helm

1.helm的引入 &#xff08;1&#xff09;编写yaml文件 &#xff08;2&#xff09;编写deployment文件 &#xff08;3&#xff09;编写service文件 &#xff08;4&#xff09;编写Ingress文件 2.helm的引入解决的问题&#xff1f; &#xff08;1&#xff09;使用helm可以把…

CommStudio for .NET Crack

CommStudio for .NET Crack CommStudio for.NET使您的应用程序可以轻松地使用串行端口和调制解调器进行通信。CommStudio for.NET是一套全面的组件和可视化调试工具&#xff0c;可将远程系统和设备与visual Studio 2005和visual Studio 2008集成。开发与遗留系统和外部设备集成…

IAR开发环境的安装、配置和新建STM32工程模板

IAR到环境配置到新建工程模板-以STM32为例 一、 简单介绍一下IAR软件1. IAR的安装&#xff08;1&#xff09; 下载IAR集成开发环境安装文件&#xff08;2&#xff09; 安装 2. 软件注册授权 二、IAR上手使用(基于STM32标准库新建工程)1、下载标准库文件2、在IAR新建工程&#x…

99%的人做效果图都会忽略的问题!为什么你的效果图没有亚洲面孔?

不知道各位设计师有没有发现一个问题&#xff0c;我们做了不少效果图&#xff0c;也积攒了很多素材&#xff0c;但是出现在我们效果图的人物几乎都是外国人&#xff01; 可能你会说是亚洲人的素材实在太少&#xff0c;但本质是对“人”不够重视&#xff0c;觉得随便“复制粘贴”…

信息安全技术工业控制系统安全控制应用指南学习笔记

工业控制系统安全控制基线 根据工业控制系统在国家安全、经济建设、社会生活中的重要程度&#xff0c;遭到破坏后对国家安全、社会秩序、公共利益以及公民、法人和其他组织的合法权益的危害程度等&#xff0c;结合信息安全等级保护标准划分及实施效果分析&#xff0c;结合工业…

超简单的ssm的疫情上报系统java学生防控打卡统计 jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 疫情上报系统 软件介绍 使用SSM框架搭建后台 前端采…

MYSQL06高级_为什么使用索引、优缺点、索引的设计、方案、聚簇索引、联合索引

文章目录 ①. 为什么使用索引②. 索引及其优缺点③. InnoDb - 索引的设计④. InnoDb中的索引方案⑤. 索引 - 聚簇索引⑥. 索引 - 二级索引 ①. 为什么使用索引 ①. 索引是存储引擎用于快速找到数据记录的一种数据结构,就好比去图书馆找书,或者新华字典里找字,相当于一个目录,可…

react搭建在线编辑html的站点——引入grapes实现在线拖拉拽编辑html

文章目录 ⭐前言⭐搭建react ts项目⭐引入grapes 插件⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文分享关于react搭建在线编辑html的站点。 react 发展历史 React是由Facebook开发的一种JavaScript库&#xff0c;用于构建用户界面。React最初发布于2013年&…