C语言程序题,为什么选择B。

 我来答
拥抱Linux
2018-12-31 · 知道合伙人教育行家
拥抱Linux
知道合伙人教育行家
采纳数:418 获赞数:2160
大学的校级奖学金,机械行业十年工作经验

向TA提问 私信TA
展开全部
语句「 printf("a%cb%c\tc%c\n",c1,c2,c3);」的解释如下:
小括号内,左边双引号及其内部的内容叫做「控制字符串(control-string)」,它是一个描述项目如何打印的字符串,需要使用双引号""(注:英文半角状态),以及应该为每个要打印的项目包含一个转换说明符,且必须一一对应,不可多一少一。
好的,来根据上面的定义具体分析一下上面的printf函数里的控制字符串是什么意思:
"a%cb%c\tc%c\n",
第一个a就是字符a,print函数将其直接输出至屏幕或者说命令行,
第二个%c是合在一起的一个转换说明符,表示这个位置需要输出一个字符。具体需要输出什么样的字符呢?那它是第一个转换说明符,那么就对应着第一个逗号右边的第一个变量c1喽。所以这个位置输出变量c1的值,也就是字符a。
第三个b是字符b,直接输出。
第四个%c的道理和前面第二个%c一样,它对应的变量是右边第二个变量c2,就输出字符b。
第五个\t,它是以\开头的,这类符号被称作转义符,除了有\t(制表符),还有常见的\n(换行符)等等。\t 的定义是光标从当前位置向后(向右)跳到某个整数的整数倍数的位置,举例来说,比如有的设备会规定\t 是光标跳到8个字符的整数倍的位置,那么假如当前光标的位置除以8还余2的话,那么光标就向后跳6个字符。所以上面的语句执行到这里的时候,屏幕上的光标就会向后跳过若干空格,从答案来看,题目的\t 规定的跳跃字符数似乎是6个。
第六个c是字符c,直接输出。
第七个%c的道理和wmo第二个%c、第四个的%c的道理一样,它对应的变量是右边第三个变量c3,所以输出字符c。
第八个\n 是换行符,光标换行。
所以最后的输出结果就是「aabb cc」这样的了。
White_MouseYBZ
2018-12-31 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6463万
展开全部
第一个a是printf的""中的控制符a,第二个a是c1变量的值;第一个b是printf的""中的控制符b,第二个b是c2变量的值;那个空格是\t,接着第一个c是printf的""中的控制符c,第二个c是c3变量的值。严格说此题还是有纰漏的:没有说明\t是几个字符,通常它是4个空白字符,而答案的bb、cc间的空格显然不足4个……由于A和C都错得太远,只好选B了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-01-01
展开全部

首先,printf函数中的占位符都是以%开头的

比如%c %d %s分别代表char int char*类型.

其次,'\'反斜杠代表转义符,比如一些常用的转义符组合:\t \n表示tab newline.

所以

a%cb%c\tc%c\n

切割一下,就是

a %c b %c \t c %c \n

然后把后面的参数值依次带入到占位符的位置中去,结果就是

a a b b \t c c \n

所以选B

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-01-01
展开全部
看那格式化的输出语句“a%cb%c\tc%c\n”,输出的:字母a后是一个字符型变量,因为参数指定为c1,而c1的值是a,所以 输出aa,接着同理输出bb。接着输出一个制表符,后边输出cc,所以选B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EMC_long
2019-01-01 · 超过51用户采纳过TA的回答
知道小有建树答主
回答量:283
采纳率:55%
帮助的人:37.7万
展开全部
%后面的一个字母表示输出格式,其中%c表示字符型,%t表示水平字符(一般有4个空格符)输出,所以选B。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(14)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式