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

【PTA|编程题|期末复习】字符串(一)

【C语言/期末复习】字符和字符串函数(附思维导图/例题)

目录

7-1 组织星期信息

输入样例 (repeat=3) :

输出样例:

代码

7-2 查找指定字符

输入格式:

输出格式:

输入样例1:

输出样例1:

输入样例2:

输出样例2:

代码

7-3 字符串逆序

输入格式:

输出格式:

输入样例:

输出样例:

代码

7-4 统计大写辅音字母

输入格式:

输出格式:

输入样例:

输出样例:

7-5 字符串替换

输入格式:

输出格式:

输入样例:

输出样例:

代码


7-1 组织星期信息

输入一个正整数repeat (0<repeat<10),做repeat次下列运算:

定义一个指针数组将下面的星期信息组织起来,输入一个字符串,在表中查找,若存在,输出该字符串在表中的序号,否则输出-1。

Sunday Monday Tuesday Wednesday Thursday Friday Saturday

输入输出示例:括号内为说明,无需输入输出

输入样例 (repeat=3) :

3
Tuesday
Wednesday
year

输出样例:

3
4
-1

编译器:GCC

代码

 
#include <stdio.h>
#include <string.h>int main()
{char day[7][10] = {"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday" };//字符串数组int repeat;scanf("%d", &repeat); //输入repeatint i, j;char str[30];for (i = 0; i < repeat; i++){scanf("%s", &str); //输入字符串for (j = 0; j < 7; j++) //将输入字符串与字符数组day中每个字符串比较{if (strcmp(str,day[j]) == 0)//使用strcmp函数比较两个字符串是否相等{printf("%d\n", j+1);//输出结果为下标加1break;}                  }if(j == 7) //没找到的情况,输出-1printf("-1\n"); }return 0;
}

7-2 查找指定字符

本题要求编写程序,从给定字符串中查找某指定的字符。

输入格式:

输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。

输出格式:

如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。

输入样例1:

m
programming

输出样例1:

index = 7

输入样例2:

a
1234

输出样例2:

Not Found

编译器:GCC

代码

#include <stdio.h>
int main()
{int i,k;int tip=0,max=0;char a,d;char b[81];scanf("%c",&a);getchar();//吃掉一个回车,否则结果会出错,回车会给下面的getsgets(b);k=0;for(k=0;b[k]!='\0';k++){ //for终止条件为遇到空字符if((a==b[k])&&(k>=max)){ //求该字符在字符串中所对应的最大下标,需满足字符相等与大于等于最大值max=k;   //将下标给maxtip=1;   //tip置为1}}if(tip==1){printf("index = %d",max);//找到最大值则输出max	}else{printf("Not Found"); //找不到最大值则输出Not Found	}return 0;
}

7-3 字符串逆序

输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。

输入格式:

输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。

输出格式:

在一行中输出逆序后的字符串。

输入样例:

Hello World!

输出样例:

!dlroW olleH

编译器:GCC

代码

 
#include<stdio.h>
int main()
{int i=0,j=0;char str[81];gets(str); //输入字符串while(str[i]!='\0')//终止条件为遇到空字符i++;             //求输入字符串长度ifor (j=i-1;j>=0;j--)//递减for循环 逆序输出每个字符putchar(str[j]);return 0;
}

7-4 统计大写辅音字母

英文辅音字母是除AEIOU以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。

输入格式:

输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

输出格式:

输出在一行中给出字符串中大写辅音字母的个数。

输入样例:

HELLO World!

输出样例:

4

编译器:GCC

代码

 
#include <stdio.h>
#define MAXSIZE 81int func(char str[]); //函数声明,参数是数组形式,返回类型为整型int main(){char str[MAXSIZE];gets(str);  //输入字符串printf("%d",func(str));
}int func(char str[]){ //函数定义,参数是数组形式,参数是数组形式,返回类型为整型int count=0;for (int i = 0; str[i]!='\0'; i++)//for循环,取出字符串每个字符,终止条件为遇到空字符{if (str[i]>='B'&&str[i]<='Z'&&str[i]!='E'&&str[i]!='I'&&str[i]!='O'&&str[i]!='U')//统计大写辅音字母{count++; //计数加1}}return count;//返回计算变量
}

7-5 字符串替换

本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:

原字母对应字母
AZ
BY
CX
DW
XC
YB
ZA

输入格式:

输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

输出格式:

输出在一行中给出替换完成后的字符串。

输入样例:

Only the 11 CAPItaL LeTtERS are replaced.

输出样例:

Lnly the 11 XZKRtaO OeGtVIH are replaced.

编译器:GCC

代码

#include<stdio.h>
int main()
{char a[81];gets(a); //输入字符串int i;for(i=0;i<81;i++){ //使用for循环,取除最后空字符以外的每个字符进行替换if(a[i]>='A'&&a[i]<='Z'){a[i]=155-a[i];}}puts(a);//输出字符串return 0;
}

相关文章:

【PTA|编程题|期末复习】字符串(一)

【C语言/期末复习】字符和字符串函数&#xff08;附思维导图/例题) 目录 7-1 组织星期信息 输入样例 (repeat3) : 输出样例: 代码 7-2 查找指定字符 输入格式&#xff1a; 输出格式&#xff1a; 输入样例1&#xff1a; 输出样例1&#xff1a; 输入样例2&#xff1a; …...

数据库基本操作2

一.DML&#xff08;Data Manipulation Language&#xff09; 用来对数据库中表的数据记录进行更新 关键字&#xff1a;增删改 插入insert 删除delete 更新update 1.数据插入 insert into 表&#xff08;列名1&#xff0c;列名2&#xff0c;列名3……&#xff09;values&a…...

BTC破5W+QAQ

比特币突破5万美元 创2021年来最高 比特币在龙年伊始涨超6.8%。在大年初四&#xff08;2月13日&#xff09;一度最高涨至5万零383美元。 今年1月&#xff0c;当市场期待已久的现货比特币交易所挂牌基金&#xff08;ETF&#xff09;推出后&#xff0c;比特币遭抛售&#xff0c…...

Xubuntu16.04系统中修改系统语言和系统时间

1.修改系统语言 问题&#xff1a;下图显示系统语言不对 查看系统中可用的所有区域设置的命令 locale -a修改/etc/default/locale文件 修改后如下&#xff1a; # File generated by update-locale LANG"en_US.UTF-8" LANGUAGE"en_US:en"LANG"en_US…...

内网穿透 | 推荐两个免费的内网穿透工具

目录 1、简介 2、Ngrok 2.1、下载安装 2.2、运行 2.3、固定域名 2.4、配置多服务 3、cpolar 3.1、下载安装 3.2、运行 &#x1f343;作者介绍&#xff1a;双非本科大三网络工程专业在读&#xff0c;阿里云专家博主&#xff0c;专注于Java领域学习&#xff0c;擅长web应…...

Android中代码生成图片高级部分

1、引言 上一篇文章已经介绍了使用bitmap对象生成图片&#xff0c;但android中不仅仅可以直接使用bitmap对象生成图片&#xff0c;也能借助bitmap对象将布局文件转化为图片&#xff0c;实际应用时&#xff0c;我们需要将两者结合起来&#xff0c;只有这样才能生成更加绚丽的图片…...

计算机网络——09Web-and-HTTP

Web and HTTP 一些术语 Web页&#xff1a;由一些对象组成对象可以是HTML文件、JPEG图像&#xff0c;JAVA小程序&#xff0c;声音剪辑文件等Web页含有一个基本的HTML文件&#xff0c;该基本HTML文件又包含若干对象的引用&#xff08;链接&#xff09;通过URL对每个对象进行引用…...

【教程】MySQL数据库学习笔记(一)——认识与环境搭建(持续更新)

写在前面&#xff1a; 如果文章对你有帮助&#xff0c;记得点赞关注加收藏一波&#xff0c;利于以后需要的时候复习&#xff0c;多谢支持&#xff01; 【MySQL数据库学习】系列文章 第一章 《认识与环境搭建》 第二章 《数据类型》 文章目录 【MySQL数据库学习】系列文章一、认…...

软件测试-测试用例研究-如何编写一份优秀的测试用例

什么是测试用例 测试用例是一组由测试输入、执行条件、预期结果等要素组成&#xff0c;以完成对某个特定需求或者目标测试的数据&#xff0c;体现测试方案、方法、技术和策略的文档。测试用例是软件测试的核心&#xff0c;它把测试系统的操作步骤用文档的形式描述出来&#xf…...

计网day1

RTT&#xff1a;往返传播时延&#xff08;越大&#xff0c;游戏延迟&#xff09; 一.算机网络概念 网络&#xff1a;网样的东西&#xff0c;网状系统 计算机网络&#xff1a;是一个将分散得、具有独立功能的计算机系统&#xff0c;通过通信设备与线路连接起来&#xff0c;由功…...

vLLM vs Text Generation Interface:大型语言模型服务框架的比较

在大型语言模型&#xff08;LLM&#xff09;的世界中&#xff0c;有两个强大的框架用于部署和服务LLM&#xff1a;vLLM 和 Text Generation Interface (TGI)。这两个框架都有各自的优势&#xff0c;适用于不同的使用场景。在这篇博客中&#xff0c;我们将对这两个框架进行详细的…...

[AIGC] 上传文件:后端处理还是直接阿里云OSS?

在构建Web应用时&#xff0c;我们经常需要处理用户上传的文件。这可能是图片、视频、文档等各种各样的文件。但是&#xff0c;上传文件的方式有很多种&#xff0c;最常见的两种方式是&#xff1a;通过后端处理&#xff0c;或者直接上传至云存储服务&#xff0c;如阿里云OSS。那…...

速盾cdn:香港服务器如何用国内cdn

在国内使用香港服务器的情况下&#xff0c;可以考虑使用速盾CDN来提供加速服务。速盾CDN是一种专业的内容分发网络解决方案&#xff0c;可以通过使用不同节点的服务器来提供高速的内容传输和访问。 首先&#xff0c;使用速盾CDN可以帮助解决香港服务器与国内用户之间的延迟和带…...

深入学习Pandas:数据连接、合并、加入、添加、重构函数的全面指南【第72篇—python:数据连接】

深入学习Pandas&#xff1a;数据连接、合并、加入、添加、重构函数的全面指南 Pandas是Python中最强大且广泛使用的数据处理库之一&#xff0c;提供了丰富的函数和工具&#xff0c;以便更轻松地处理和分析数据。在本文中&#xff0c;我们将深入探讨Pandas中一系列数据连接、合…...

IDEA中mybatis配置文件表名显示红色,提示 Unable to resolve table ‘xxx‘

问题&#xff1a;IDEA中mybatis配置文件表名显示红色&#xff0c;提示 Unable to resolve table ‘xxx’ 解决方法&#xff1a; 使用快捷提示键 Alt Enter&#xff0c;选择 Go to SQL Resolution Scopes&#xff08;转到SQL的解析范围&#xff09;...

Python基于大数据的电影预测分析系统

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

【MATLAB】小波神经网络回归预测算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 小波神经网络回归预测算法是一种利用小波变换和人工神经网络相结合的方法&#xff0c;用于解决回归预测问题。下面将详细介绍该算法的原理与方法&#xff1a; 小波变换&#xff1a; 小波变…...

最新Burp Suite入门讲解

Burp Suite的安装 Burp Suite是一款集成化的渗透测试工具&#xff0c;包含了很多功能&#xff0c;可以帮助我们高效地完成对Web应用程序的渗透测试和安全检测。 Burp Suite由Java语言编写&#xff0c;Java自身的跨平台性使我们能更方便地学习和使用这款软件。不像其他自动化测…...

【C++】模版初阶

目录 泛函编程 函数模版 概念 格式 原理 实例化 模版函数的匹配原则 类模板 定义格式 泛函编程 如何实现一个通用的交换函数呢&#xff1f; void Swap(int& left, int& right) {int temp left;left right;right temp; } void Swap(double& left, dou…...

Stable Diffusion 模型下载:DreamShaper(梦想塑造者)

本文收录于《AI绘画从入门到精通》专栏&#xff0c;专栏总目录&#xff1a;点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十 下载地址 模型介绍 DreamShaper 是一个分格多样的大模型&#xff0c;可以生成写实、原画、2.5D 等…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

NPOI操作EXCEL文件 ——CAD C# 二次开发

缺点:dll.版本容易加载错误。CAD加载插件时&#xff0c;没有加载所有类库。插件运行过程中用到某个类库&#xff0c;会从CAD的安装目录找&#xff0c;找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库&#xff0c;就用插件程序加载进…...

Python 实现 Web 静态服务器(HTTP 协议)

目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1&#xff09;下载安装包2&#xff09;配置环境变量3&#xff09;安装镜像4&#xff09;node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1&#xff09;使用 http-server2&#xff09;详解 …...

深入理解Optional:处理空指针异常

1. 使用Optional处理可能为空的集合 在Java开发中&#xff0c;集合判空是一个常见但容易出错的场景。传统方式虽然可行&#xff0c;但存在一些潜在问题&#xff1a; // 传统判空方式 if (!CollectionUtils.isEmpty(userInfoList)) {for (UserInfo userInfo : userInfoList) {…...