问题链接:UVA445 Marvelous Mazes。

题意简述:输入若干行字符串,将其转换为另外一个字符串输出。字符串中包括数字、大小写字母、"*"、"b"和"!",遇见"!"则输出换行;遇见连续的数字则将这些数字求和,之后输出和个数的字母或空格;遇见"b"则输出空格(若干个);遇见字母则输出字母(若干个)。

问题分析:(略)。

程序说明:封装了函数mygets()(函数gets()在新标准中,被建议不要使用,作用就自己做一个),其他都是套路。使用函数putchar()输出,要比使用函数printf()效率高一些。

AC的C语言程序如下:

/* UVA445 Marvelous Mazes */#include <stdio.h>
#include <ctype.h>
#include <string.h>#define MAXN 256int mygets(char s[])
{int i = 0;char c;while((c = getchar()) && c != '\n' && c != EOF)s[i++] = c;s[i] = '\0';return i > 0 || c != EOF;
}int main(void)
{char s[MAXN];int sum, len, i, j;while(mygets(s)){len = strlen(s);sum=0;for(i=0; i<len; i++) {if(isdigit(s[i]))sum += s[i] - '0';  /* 数字的话计算输出个数 */else if(s[i] == '!')putchar('\n');      /* '!'的话,输出换行 */else {/* 如果是字母b,则输出若干个空格;如果是其他字母怎输出若干个该字母 */for(j=sum; j>0; j--)putchar((s[i] == 'b') ? ' ' : s[i]);sum=0;              /* 个数清零 */}}putchar('\n');}return 0;
}

转载于:https://www.cnblogs.com/tigerisland/p/7564372.html

UVA445 Marvelous Mazes相关推荐

  1. UVA445 JAVA版本 Marvelous Mazes

    自我标记:String数据结构的轻应用 辣鸡小玲的题解 利用CSND这个平台记录一下我的成长历程. UVA445 JAVA版本 Marvelous Mazes 水中之水,天河净水 题目我就不贴了,一搜 ...

  2. 445 - Marvelous Mazes

    2019独角兽企业重金招聘Python工程师标准>>> 题意: 根据输入画出迷宫.输入的字符串中包含字符和数字, 其中数字表示其后紧跟着的字符的重复次数(若连续出现两个以上的数字, ...

  3. AOAPC I: Beginning Algorithm Contests 题解

    AOAPC I: Beginning Algorithm Contests 题解 AOAPC I: Beginning Algorithm Contests (Rujia Liu) - Virtual ...

  4. π-Algorithmist分类题目(1)

    原题网站:Algorithmist,http://www.algorithmist.com/index.php/Main_Page π-Algorithmist分类题目(1) Sorting UVAL ...

  5. 提取了下刘汝佳推荐的题号...

    今天闲来没事上uva oj提取了下刘汝佳推荐的acm题号,原始数据如下: Volume 0. Getting Started    10055 - Hashmat the Brave Warrior ...

  6. Marvelous Designer衣袖设计教程

    大小解压后:2.96G 持续时间3h 28m 包含项目文件 1280X720 MP4 语言:英语+中英文字幕(根据原英文字幕机译更准确) 标题:技能分享--卓越设计师大师班(袖子) 信息: 在我的课程 ...

  7. 使用 Marvelous Designer 为DAZ Studio 的 Genesis8 Female做衣服 1

    使用 Marvelous Designer 为DAZ Studio 的 Genesis8 Female做衣服 用Marvelous Designer制作了服装. Avatar是DAZ studio导出 ...

  8. marvelous designer 10安装使用教程(附快捷键)

    如果你从事服装设计行业,那么想必marvelous designer 10是一款你不可或缺的软件,这是一款功能全面,专业强大的三维服装设计软件,其中拥有十分强大的模拟效果和直观的用户界面,只有拥有它即 ...

  9. Marvelous Necklace Gym - 102020M

    M - Marvelous Necklace Gym - 102020M &:前缀和. #include <cstdio> #include <algorithm> # ...

最新文章

  1. 数据集获取加速神器来了!
  2. CUDA学习(七十一)
  3. 转载---虚拟机类加载机制
  4. superset数据集birth_names的负时间戳处理
  5. BugkuCTF-Crypto题把猪困在猪圈里
  6. 54 岁的当当李国庆“杀入”区块链!
  7. django基础 第一章 环境搭建
  8. Google Earth Engine(GEE)——导出视频和存储到云端!
  9. 外点惩罚函数法matlab程序例子,外点罚函数优化实例.doc
  10. 前端点击图片将跳出显示框显示图片
  11. 面试——游戏测试工程师(20190918)
  12. 最好的跑步耳机推荐、盘点五款公认最好的跑步耳机
  13. 工具人实锤!我用java中的文件IO流帮同事处理了足足18M的文本数据,泪目(一)
  14. 爱可信携手Marvell展示爱可信Linux平台
  15. mendeley引用参考文献不显示_ubuntu下使用mendeley插入参考文献
  16. 关闭tomcat6下的stdout日志
  17. UNIX_C 高级编程七
  18. UltraEdit连接linux中文乱码,UltraEdit显示中文乱码的解决办法
  19. 重新回头学习归纳ES6的知识点-------promise(承诺)
  20. 赌徒有10元,一次输赢1元,手头能到110元的概率

热门文章

  1. 【Android UI设计与开发】9:滑动菜单栏(一)开源项目SlidingMenu的使用和示例-转...
  2. 转Oracle性能参数—经典常用
  3. Xcode统计整个项目代码行数
  4. 苹果成为存储厂商的新饽饽
  5. 仓储“云服务”初创公司 Clutter获得 6500 万美元 C 轮融资
  6. 南沙发布全国首个智慧城市物联网大数据管理平台
  7. 第二十一天 认识一维数组part3
  8. android异步任务更新进度条,Android的AsyncTask异步任务浅析
  9. php天津旅游设计网站作品
  10. oracle用中文linux,linux+oracle中文乱码