您的位置:首页 > 其它

蓝桥杯B六----格子中居中输出问题

2016-03-16 10:00 337 查看
格子中输出

StringInGrid函数会在一个指定大小的格子中打印指定的字符串。

要求字符串在水平、垂直两个方向上都居中。

如果字符串太长,就截断。

如果不能恰好居中,可以稍稍偏左或者偏上一点。

下面的程序实现这个逻辑,请填写划线部分缺少的代码。

include

include

+————+

不知道的语法点:

1 strcpy(buf, s);

字符串粘贴函数.

2 buf[width-2]=0

3 “%*s%s%*s” 百度到的:

取决于在scanf中使用还是在printf中使用。

在scanf中使用,则添加了*的部分会被忽略,不会被参数获取。

例如:int a,b;char b[10];scanf(“%d%*s”,&a,b);输入为:12 abc那么12将会读取到变量a中,但是后面的abc将在读取之后抛弃,不赋予任何变量(例如这里的字符数组b)

在printf中使用,表示用后面的形参替代的位置,实现动态格式输出。

例如:

printf(“%s”, 10, s); /意思是输出字符串s,但至少占10个位置,不足的在字符串s左边补空格,这里等同于printf(“%10s”, s);*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: