PTA 7-100 敲笨钟 (20 分)(C语言版)

2023-11-06

微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。为了增加敲钟的趣味性,还会糟改几句古诗词。其糟改的方法为:去网上搜寻压“ong”韵的古诗词,把句尾的三个字换成“敲笨钟”。例如唐代诗人李贺有名句曰:“寻章摘句老雕虫,晓月当帘挂玉弓”,其中“虫”(chong)和“弓”(gong)都压了“ong”韵。于是这句诗就被糟改为“寻章摘句老雕虫,晓月当帘敲笨钟”。

现在给你一大堆古诗词句,要求你写个程序自动将压“ong”韵的句子糟改成“敲笨钟”。

输入格式:

输入首先在第一行给出一个不超过 20 的正整数 N。随后 N 行,每行用汉语拼音给出一句古诗词,分上下两半句,用逗号 , 分隔,句号 . 结尾。相邻两字的拼音之间用一个空格分隔。题目保证每个字的拼音不超过 6 个字符,每行字符的总长度不超过 100,并且下半句诗至少有 3 个字。

输出格式:

对每一行诗句,判断其是否压“ong”韵。即上下两句末尾的字都是“ong”结尾。如果是压此韵的,就按题面方法糟改之后输出,输出格式同输入;否则输出 Skipped,即跳过此句。

输入样例:

5
xun zhang zhai ju lao diao chong, xiao yue dang lian gua yu gong.
tian sheng wo cai bi you yong, qian jin san jin huan fu lai.
xue zhui rou zhi leng wei rong, an xiao chen jing shu wei long.
zuo ye xing chen zuo ye feng, hua lou xi pan gui tang dong.
ren xian gui hua luo, ye jing chun shan kong.

输出样例:

xun zhang zhai ju lao diao chong, xiao yue dang lian qiao ben zhong.
Skipped
xue zhui rou zhi leng wei rong, an xiao chen jing qiao ben zhong.
Skipped
Skipped

参考代码: 

#include<stdio.h>
#include<string.h>

int main()
{
	int n;
	scanf("%d\n",&n);
	while(n--){
		int flag1=0,flag2=0,t;	//flag1储存是否上下句是否押韵,flag2用于找最后3个字 
		char str[200];
		gets(str);
		//判断上下句是否都押韵 
		for(int i=0;i<strlen(str);i++){
			if(str[i]==','&&str[i-3]=='o'&&str[i-2]=='n'&&str[i-1]=='g')
				flag1++;
			if(str[i]=='.'&&str[i-3]=='o'&&str[i-2]=='n'&&str[i-1]=='g')
				flag1++;
		}
		if(flag1==2){
			for(int i=strlen(str)-1;i>=0;i--){
				//找到倒数第3个字并将位置赋值给t 
				if(str[i]==' ')
					flag2++;
				if(flag2==3){
					t=i;
					break;
				}
			}
			//前面正常输出,最后3个字替换为“敲笨钟”
			for(int i=0;i<=t;i++){
				printf("%c",str[i]);
				if(i==t)
					printf("qiao ben zhong.\n");
			}
		}else
			printf("Skipped\n");	//如果不押韵,直接输出Skipped
	}
	
	return 0;
 } 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PTA 7-100 敲笨钟 (20 分)(C语言版) 的相关文章

随机推荐

  • VMWare安装Deepin系统

    01 点击 创建新的虚拟机 02 选择 自定义 高级 点击下一步 03 选择 稍后安装操作系统 点击下一步 04 客户机操作系统选择Linux L Deepin是基于Ubuntu64位制作所以版本 V 选择Ubuntu 64位 点击下一步
  • kafka如何保证消息不被重复消费

    1 原因 1 kafka有个offset的概念 当每个消息被写进去后 都有一个offset 代表他的序号 然后consumer消费该数据之后 隔一段时间 会把自己消费过的消息的offset提交一下 代表我已经消费过了 下次我要是重启 就会继
  • 模式识别学习初感悟

    学习模式识别已经快一个月了 从开始的混沌迷茫到现在的小有感觉 不能说自己进步了很多 只能说自己没有虚度这一个月的时光 下面相对自己这一个月的学习做一个总结 希望各位老师同学能多提宝贵意见 毕竟学术要在交流中才能发展 考研的生活结束后 顺利进
  • HTML中使用input type="file"时,不允许修改value属性值

    在HTML中使用
  • C++基础知识 - auto_ptr智能指针 (C++98)

    auto ptr 使用详解 C 98 auto ptr 是c 98定义的智能指针模板 其定义了管理指针的对象 可以将new 获得 直接或间接 的地址赋给这种对象 当对象过期时 其析构函数将使用delete 来释放内存 用法 头文件 incl
  • “华为杯”研究生数学建模竞赛2020年-【华为杯】B题:汽油辛烷值优化建模(附获奖论文和python代码实现)

    目录 摘 要 1 问题重述 1 1 问题背景 1 2 问题重述 2 模型假设 3 符号说明
  • 据说程序员节 随手记录下matlab的tan和atan(反正切 arctan函数)

    matlab求正切 反正切 随笔 tan函数测试 tan 0 0 tan 45 1 6198 tan pi 4 1 可以看出 matlab的输入单位是rad弧度 弧度和角度的换算单位为 1 rad 180 pi o 1o 1 pi 180
  • 黑客入门学习方法和盗号思路 别把这个想得很神秘

    大神请绕过 还有盗号的一些方法和思路 骗子太多 别上当 此文只是希望更多的人了解 更能很好的保护好自身虚拟财产 黑客 看着很神秘 其实都是普通人 工作不同而已 当然 有的很厉害的 他们智商都很高 这里不做讨论 就说说普通人如何学习这一块 入
  • JAVA系列教程

    1 Java快速教程 http www cnblogs com vamei archive 2013 03 31 2991531 html 2 Java 教程 http www runoob com java java tutorial h
  • jquery-动态添加,删除

    前言 jquery的动态添加和删除 以及显示他的数量 效果图 实现代码
  • ChatHub

    1写在前面 最近忙的不行 根本没有时间打开电脑 随着GPT 4和new bing的发布 真的可以说是AI的iphone时刻到来了 现在也是越来越多的网站接入了AI 以后人人都可以是程序员了 New Bing在GPT 4的加持下 功力大增 搜
  • 重学二、函数指针&指针运算

    目录 1 多级指针 2 数组与数组指针 3 采用指针遍历数组 4 循环时给数组赋值 5 指针类型有何用 7 函数指针 1 多级指针 int main int num 66 int pointer num 一级指针 int sec point
  • 总结:修改Anaconda中的Jupyter Notebook默认工作路径的三种方式

    总结 修改Anaconda中的Jupyter Notebook默认工作路径的三种方式 方式1 打开Windows的cmd 在cmd中输入jupyter notebook generate config如下图 可以看到路径为D Users 找
  • Qt之QTableView 获取当前选中行

    QModelIndexList list ui gt tableView gt selectedIndexes if list count lt 0 return QModelIndex index ui gt tableView gt s
  • ElasticSearch讲解——基础概念

    一 什么是ElasticSearch ElasticSearch以下简称为ES ES是一款基于Lucene的搜索服务器 它提供了一个分布式多用户能力的全文搜索引擎 并且基于RESTful web接口对外提供检索服务能力 Elasticsea
  • 展望2020

    区块链行业在2019年末迎来高光时刻 国家明确指出把区块链作为核心技术自主创新重要突破口 加快推动区块链技术和产业创新发展 新年伊始 陀螺财经邀请到数位学术圈 产业圈的相关人士 运用他们的专业知识 行业实践 剖析2020年行业的发展动向 谈
  • 【算法】链表

    算法 链表 反转链表 移除链表 交换链表 链表相交 删除链表中的倒数第N个节点 环形链表 反转链表 反转链表是指将单向链表的顺序逆转 即原本的链表方向由头节点指向尾节点 变为尾节点指向头节点 在 JavaScript 中 可以通过修改节点的
  • KEIL的下载图标是灰色的怎么办

    今天用cubemx配置好之后 generate发现下载图表是灰色的 解决方法 魔术棒下面的debug选项 有个右下角有个空手动输入 MPU
  • mock测试工具

    什么是mock测试 mock常见场景 mock常用工具 实战 1 什么是mock测试 mock测试就是对于某些不容易构造或者不容易获取的对象 用一个虚拟的对象来创建以便测试的测试方法 2 mock常见场景 1 无法控制第三方系统某接口的返回
  • PTA 7-100 敲笨钟 (20 分)(C语言版)

    微博上有个自称 大笨钟V 的家伙 每天敲钟催促码农们爱惜身体早点睡觉 为了增加敲钟的趣味性 还会糟改几句古诗词 其糟改的方法为 去网上搜寻压 ong 韵的古诗词 把句尾的三个字换成 敲笨钟 例如唐代诗人李贺有名句曰 寻章摘句老雕虫 晓月当帘