2018秋寒假作业6—PTA编程总结3
1.实验代码
7-1 抓老鼠啊~亏了还是赚了? (20 分)
某地老鼠成灾,现悬赏抓老鼠,每抓到一只奖励10元,于是开始跟老鼠斗智斗勇:每天在墙角可选择以下三个操作:放置一个带有一块奶酪的捕鼠夹(T),或者放置一块奶酪(C),或者什么也不放(X)。捕鼠夹可重复利用,不计成本,奶酪每块3元。
聪明的老鼠呢?它们每天可能会派出一只老鼠到墙角,看看墙角有啥:
若什么也没有(X),老鼠们就不高兴了(Unhappy),会有长达一天(也就是第二天)的不高兴期。在不高兴期间,不派出老鼠。不高兴期结束之后,派出老鼠。
若有捕鼠夹(T),这只老鼠被引诱吃掉奶酪并被打死(Dead),老鼠们会有长达两天(也就是第二和第三天)的伤心期。在伤心期间,不派出老鼠。伤心期结束之后,派出老鼠。在这种情况下,抓到1只老鼠可获得奖励10元,但同时也耗费了一块奶酪。注意,如果某一天放置了捕鼠夹但老鼠没有出现,则没有耗费奶酪。
若有奶酪(C),老鼠吃了奶酪会很开心(Happy!),会有长达两天(第二和第三天)的兴奋期。在兴奋期间,即使叠加了不高兴或者伤心,也必定派出老鼠。在这种情况下,没抓到老鼠,而且耗费了一块奶酪。注意,如果某一天放置了奶酪但老鼠没有出现,则奶酪可以下次再用,没有耗费。
现在给你连续几天的操作序列,且已知第一天肯定会派出老鼠,请判断老鼠每天的状态,并计算盈利。
输入格式:
输入在一行中给出连续的由C或T或X组成的不超过70个字符的字符串,以$结束。字符串中每个字符表示这一天的操作( 即X:什么都不放;T:放捕鼠夹;C:放奶酪)。题目保证至少有一天的操作输入。
输出格式:
要求在第一行输出连续的字符串,与输入相对应,给出老鼠的状态:
! 表示派出老鼠吃到奶酪
D 表示派出老鼠被打死
U 表示派出老鼠无所获
- 表示没有派出老鼠
 第二行则应输出一个整数表示盈利。(如果有亏损,则是负数)
 输入样例1:
 TXXXXC$
 输出样例1:
 D--U-!
 4
 输入样例2:
 CTTCCX$
 输出样例2:
 !DD--U
 11
include<stdio.h>
int main()
{
int happy=0,sad=0,unhappy=0,a=0,b=0;   //a为抓到老鼠的数,被老鼠吃到的奶酪数
char op;
while((op=getchar())!='$'){
if(sad&&!happy){
  sad--;
  printf("-");
}
else{
    if(unhappy&&!happy){
        unhappy--;
        printf("-");
    }
    else{
      if(happy)  happy--;
      switch(op)
      {
        case 'T':printf("D");a++;sad=2;break;
        case 'C':printf("!");b++;happy=2;break;
        case 'X':printf("U");unhappy=1;break;
      }
    }
}
}
printf("\n");
printf("%d",7a-3b);
return 0;
}
2.设计思路
输入 happy=0,sad=0,unhappy=0,a=0,b=0;
且a为抓到老鼠的数,被老鼠吃到的奶酪数
调用while语句和else if语句来进行情况的分类与判定
最后switch进行最后分类分析
3.本题调试过程碰到问题及解决办法
问题



解决方法
在编译器中进行编译,发现错误,但是本次错误比较多,只能一个一个细节的网上搜索。
4.使用PTA的截图

2018秋寒假作业6—PTA编程总结3的更多相关文章
- 2018秋寒假作业5—PTA编程总结2
		1.实验代码: 7-1 币值转换 (20 分) 输入一个整数(位数不超过9位)代表一个人民币值(单位为元),请转换成财务要求的大写中文格式.如23108元,转换后变成"贰万叁仟壹百零捌&qu ... 
- 2018秋寒假作业4—PTA编程总结1
		7-1 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数个符 ... 
- 2018秋寒假作业4——PTA编辑总结1
		#include<stdio.h> #include<math.h> int main(void) { int n,i,j,p,m,ge,N,k; char op; ){ sc ... 
- 2018秋寒假作业6- -PTA编程总结3
		PTA3抓老鼠啊~亏了还是赚了?思路: 首先定义变量并初始化为零,然后用if-else语句判断其关系和计算奶酪数量及盈利情况. 
- 2018秋寒假作业4- -PTA编程总结1
		PTA1打印沙漏.打印沙漏中的“沙漏形状”,就是每行输出的奇数符号与各行符号中心对齐:相邻两行符号数相差2:符号数从大到小递减到1,再从小到大递增.在做的时候出了几次错,编译发先是几个小地方出错了.以 ... 
- Q114寒假作业之割绳子
		割绳子 TimeLimit:1000MS MemoryLimit:10000K 64-bit integer IO format:%lld Problem Description 已知有n条绳子,每 ... 
- 网易云课堂_C++程序设计入门(下)_第10单元:月映千江未减明 – 模板_第10单元 - 单元作业:OJ编程 - 创建数组类模板
		第10单元 - 单元作业:OJ编程 - 创建数组类模板 查看帮助 返回 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提 ... 
- 网易云课堂_C++程序设计入门(下)_第7单元:出入虽同趣,所向各有宜 – 文件输入和输出_第7单元 - 作业2:编程互评
		第7单元 - 作业2:编程互评 查看帮助 返回 提交作业(剩余10天) 完成并提交作业 作业批改 互评训练 互评作业 自评作业 成绩公布 查看成绩 由于在线编程不支持 ... 
- Luogu P2717 寒假作业(平衡树)
		P2717 寒假作业 题意 题目背景 \(zzs\)和\(zzy\)正在被寒假作业折磨,然而他们有答案可以抄啊. 题目描述 他们共有\(n\)项寒假作业.\(zzy\)给每项寒假作业都定义了一个疲劳值 ... 
随机推荐
- 我的第一篇博客:vue-cli配置项目
			注意:在安装vue-cli之前一定要确保安装了node和vue 安装配置node:下载node(https://nodejs.org/en/)然后一路无脑安装 查看安装是否成功:node –versi ... 
- Linux 环境下安装Redis的步骤
			#进入usr/local目录cd /usr/local#下载1.wget http://download.redis.io/releases/redis-4.0.10.tar.gz#解压2.tar x ... 
- 20175120彭宇辰 《Java程序设计》第九周学习总结
			教材内容总结 一.mysql数据库管理系统(windows) 1.官网下载安装解压mysql社区版 2.启动mysql 用cmd进入mysql解压包,输入 mysqld --initialize-in ... 
- 安装python的第三方Pillow库
			方法/步骤 找到easy_install.exe工具.在windows下安装Python后,在其安装路径下的scripts文件中默认安装好了easy_install工具.完整路径如下例:D:\Pyth ... 
- js  计算浮点数
			JS的浮点计算 最近遇到了数值计算的时候,计算结果出现了类似于199.9999999999999999999的情况,但是被用来计算的两个数值都只是两位数. 就像这样 --------> ... 
- html5 知识点简单总结03
			table表格 ----基本结构 table默认无边框(border) <table border="数值"> <tr> <th>表头</ ... 
- listview 点击时间被拦截
			记录下自己所犯的错误,在写ListView的点击事件时OnItemClickListener,onItemClick方法没有执行,导致ListView条目点击事件失效,检查发现百度上有很多不同的答案, ... 
- CF D.Mister B and Astronomers
			题意概括好麻烦, 好吧既然是英文题面那放一下题意. 题意:有 n 个观察员,第一个观察员在 0 秒开始观察星空,随后第i 个观察员会在第 i − 1 个观察员之后 ai 秒观察,第一个观察员也会在第 ... 
- 防F12扒代码:按下F12关闭当前页面
			只要按下那神秘的审查元素.按下那神秘的F12键,奇迹出现了!网站变成了空白页,可谓杀防君子放火必备佳品!一段JavaScript代码即可实现上述功能,插入到 footer.php 的 </bod ... 
- mysql的基础用法,水一下
			#和上一篇是一起的,上一篇就是为这个做insert <blockquote>/*思考题*/ create database spj; use spj;create table s( sno ... 
