寒假作业 pta编程总结2
实验代码:
#include<stdio.h>
#include<stdbool.h>
void toNUM(int n);
void toUNIT(int n);
int main()
{
bool BeginC = false;
bool Czero = false;
int a[9] = {0};
int n, i, j, tmp;
scanf("%d", &n);
for(i=100000000, j=0; i>0; i/=10)
{
a[j] = n/i;
n %= i;
j++;
}
for(i=0; i<j; i++)
{
//printf("a[%d]:%d", i, a[i]);
if(a[i]>0)
{
BeginC = true;
}
if(BeginC)
{
if(a[i] != 0)
{
if(Czero) /**< 用来标记读xx万零xx的数 */
{
if(i!=5) /**<如果遇到连续0,直到千位,前面可以不读0 */
{
printf("a");
}
Czero = false;
}
toNUM(a[i]);
toUNIT(i);
}
if(a[i] == 0)
{
/**< if(i == 4) 本来if语句我是写成这样的,用例全过,但是对于100000001这个数,输出是错的,因为输多了一个W,所以改成加上对万位的判断*/
if(i == 4 && ((a[1]!=0) || (a[2]!=0) || (a[3]!=0)|| (a[4]!=0))) /**< 考虑到1001001应该读作1千万1千零1,即使万位遇0还是要读出 */
toUNIT(i);
Czero = true;
}
}
}
if(!BeginC)
{
printf("a"); /**< 如果数组一直为0,输出0 */
}
system("pause") ;
}
void toNUM(int n)
{
switch(n)
{
case 0:
printf("a");
break;
case 1:
printf("b");
break;
case 2:
printf("c");
break;
case 3:
printf("d");
break;
case 4:
printf("e");
break;
case 5:
printf("f");
break;
case 6:
printf("g");
break;
case 7:
printf("h");
break;
case 8:
printf("i");
break;
case 9:
printf("j");
break;
default:
printf("@ERROR@");
break;
}
}
void toUNIT(int n)
{
switch(n)
{
case 0:
printf("Y");
break;
case 1:
printf("Q");
break;
case 2:
printf("B");
break;
case 3:
printf("S");
break;
case 4:
printf("W");
break;
case 5:
printf("Q");
break;
case 6:
printf("B");
break;
case 7:
printf("S");
break;
default:
printf("");
break;
}
}
本题调试过程碰到问题及解决办法:
问题一:总是不小心漏代码,导致调试过程中总要回头,以致花太多时间
问题二;有些代码不会写比如: default, Czero = false等,要去请教大佬,或者跟已完成的代码去比较才能完成
问题三:c语言还有些基础没弄明白,不会
运行结果截图:
寒假作业 pta编程总结2的更多相关文章
- 寒假作业 pta编程总结3
实验代码: 某地老鼠成灾,现悬赏抓老鼠,每抓到一只奖励10元,于是开始跟老鼠斗智斗勇:每天在墙角可选择以下三个操作:放置一个带有一块奶酪的捕鼠夹(T),或者放置一块奶酪(C),或者什么也不放(X).捕 ...
- 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条绳子,每 ...
- Luogu P2717 寒假作业(平衡树)
P2717 寒假作业 题意 题目背景 \(zzs\)和\(zzy\)正在被寒假作业折磨,然而他们有答案可以抄啊. 题目描述 他们共有\(n\)项寒假作业.\(zzy\)给每项寒假作业都定义了一个疲劳值 ...
- 寒假作业---蓝桥杯---DFS
题目描述 现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: 每个方块代表1~13中的某一个数字,但不能重复. 比如: 6 + 7 = 13 9 - 8 = 1 3 * 4 = 12 10 ...
- java 寒假作业
寒假作业 现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: □ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □ (如果显示不出来,可以参见[图1.jpg]) 每个方 ...
- 2016蓝桥杯省赛C/C++A组第六题 寒假作业
题意:现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: □ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □ 每个方块代表1~13中的某一个数字,但不能重复. 比如: ...
- java实现第七届蓝桥杯寒假作业
题目6.寒假作业 寒假作业 现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: □ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □ (如果显示不出来,可以参见[图1. ...
随机推荐
- 四:(之九_容器资源限制)Dockerfile语法梳理和实践
9 容器资源限制 9.1 Virtualbox :工具操作 9.2 内存限制 docker --help 只限定memory bytes,则memory-swap默认与其存储相同. 资源限制生效: ...
- css的position
1.标准流2.浮动3.定位块级元素:div.H1-H6.有序及无序列表(ol.ul.li).p内联元素:a.span.img 1. 介绍 1.1 说明 Position 属性:规定元素的定位类型.即元 ...
- springboot+mybatis+thymeleaf项目搭建及前后端交互
前言 spring boot简化了spring的开发, 开发人员在开发过程中省去了大量的配置, 方便开发人员后期维护. 使用spring boot可以快速的开发出restful风格微服务架构. 本文将 ...
- C++之 类型定义语句--typedef
typedef的作用是给一个已经存在的数据类型起个别名. 使用的语法形式是:typedef 已有类型名 新类型名表;. 新类型名表中可以有多个标识符,它们之间用逗号分开,就是在一个typedef ...
- 浅谈Vector、ArrayList、LinkedList
下图是Collection的类继承图 从图中可以看出:Vector.ArrayList.LinkedList这三者都实现了List 接口.所有使用方式也很相似,主要区别在于实现方式的不同,所以对不同的 ...
- DevExpress v18.2新版亮点——Reporting篇(二)
行业领先的.NET界面控件——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress Reporting v18.2 的新功能,新版3 ...
- Git问题总结
1 git push origin master 提示Everything up-to-date 表示本地仓库和远程仓库是一致的,没有更新,需要检查自己的提交. 2 git push origin m ...
- Alpha阶段敏捷冲刺总结
项目感言 张艺琳 在这次冲刺中,我主要担任着PM的角色.不仅要梳理流程给小组每个成员进行分工,并且还要及时监督他们在要求时间内提交代码.同时我也参与到开发中去,与小组成员一起讨论数据库,最后一起设计出 ...
- tcl实现批量压缩文件夹
tcl脚本本身对字符串的处理比较简单,所以想着用这个也实现下: proc main {} { puts "请输入路径:" set strpath "E:\\123&quo ...
- ansible 变量详解
定义变量的方法 1. 主机变量,在hosts文件中设置变量, [atlanta] host1 http_port= maxRequestsPerChild= host2 http_port= maxR ...