第六届蓝桥杯C/C++A组第四题解答
2015-05-06 20:23
218 查看
题目:
代码填空
对于题目中数据,应该输出:
+------------------+
| |
| abcd1234 |
| |
| |
+-------------------+
思路:
根据*s的定义,填写相应代码即可。
【*s代表占位符,如printf(“%*s”, 6, “1234”);就相当于printf(“%6s”, “1234”);】
在没有填任何东西前,删除要填的那一整行,发现这一行的目的是要我们吧带有abcd1234的哪一行显示出来,数一数空格数量,找到相应的规律,注意所要求的不仅仅是abcd1234四个字母,还要求任意字符串,故要找到普片规律,得到(width-strlen(buf)-2)/2.
解答:
(width-strlen(buf)-2)/2, " ", buf,(width-strlen(buf)-2)/2," "
运行结果:
心路历程:
做这道题的时候,实在不知道*s为何物,且对一个C++选手而言,很少用到printf,所以几乎无法下手,最后半个小时的垃圾时间就一直在各种试,无果。其实说实在的,蓝桥杯搞这个*s是很不科学的,按往年的思路,这一题会非常简单,但今年就搞了个这么偏的东西,倒也挺出乎我的意料。
代码填空
#include <stdio.h> #include <string.h> void StringInGrid(int width, int height, const char* s) { int i,k; char buf[1000]; strcpy(buf, s); if(strlen(s)>width-2) buf[width-2]=0; printf("+"); for(i=0;i<width-2;i++) printf("-"); printf("+\n"); for(k=1; k<(height-1)/2;k++){ printf("|"); for(i=0;i<width-2;i++) printf(" "); printf("|\n"); } printf("|"); printf("%*s%s%*s",_____________________________________________); //填空 printf("|\n"); for(k=(height-1)/2+1; k<height-1; k++){ printf("|"); for(i=0;i<width-2;i++) printf(" "); printf("|\n"); } printf("+"); for(i=0;i<width-2;i++) printf("-"); printf("+\n"); } int main() { StringInGrid(20,6,"abcd1234"); return 0; }
对于题目中数据,应该输出:
+------------------+
| |
| abcd1234 |
| |
| |
+-------------------+
思路:
根据*s的定义,填写相应代码即可。
【*s代表占位符,如printf(“%*s”, 6, “1234”);就相当于printf(“%6s”, “1234”);】
在没有填任何东西前,删除要填的那一整行,发现这一行的目的是要我们吧带有abcd1234的哪一行显示出来,数一数空格数量,找到相应的规律,注意所要求的不仅仅是abcd1234四个字母,还要求任意字符串,故要找到普片规律,得到(width-strlen(buf)-2)/2.
解答:
(width-strlen(buf)-2)/2, " ", buf,(width-strlen(buf)-2)/2," "
运行结果:
心路历程:
做这道题的时候,实在不知道*s为何物,且对一个C++选手而言,很少用到printf,所以几乎无法下手,最后半个小时的垃圾时间就一直在各种试,无果。其实说实在的,蓝桥杯搞这个*s是很不科学的,按往年的思路,这一题会非常简单,但今年就搞了个这么偏的东西,倒也挺出乎我的意料。
相关文章推荐
- 第六届蓝桥杯C++B组第四题:格子中输出
- 第六届蓝桥杯C/C++A组第一题解答
- 2015年4月第六届蓝桥杯c/c++B组省赛试题和个人解答
- 第六届蓝桥杯C/C++A组第五题解答
- 第六届蓝桥杯C/C++A组第八题解答
- 第六届蓝桥杯C/C++A组第三题解答
- 第六届蓝桥杯A组C/C++ 第四题 格子中输出
- 第六届蓝桥杯个人省赛C语言A组第四题
- 2015第六届蓝桥杯C++B组第三题:三羊献瑞
- 第六届蓝桥杯c++B组江西赛区
- 第六届蓝桥杯C/C++ B组
- 算法笔记_119:蓝桥杯第六届省赛(Java语言A组)试题解答
- 【快速排序】(2016)第七届蓝桥杯省赛 C/C++ A组 题解(第四题)
- 【DFS回溯】(2015)第六届蓝桥杯省赛 C/C++ A组 题解(第五题)
- 蓝桥杯java第六届决赛第四题--穿越雷区
- 2015年第六届蓝桥杯省赛(C/C++ B组)第七题
- 算法笔记_120:蓝桥杯第六届省赛(Java语言B组部分习题)试题解答
- 2013蓝桥杯全国软件大赛C++模拟试题-硬币方案-解答
- 第六届蓝桥杯 省赛第7题牌型种数(C++ JAVA)
- 2014 蓝桥杯 预赛 c/c++ 本科B组 第四题:史丰收速算(7' )