求解C语言题,分析

1.设charch='a';,执行printf("%d,%c\n",ch,ch+2);后的输出结果是()?2.执行语句for(i=10;i>0;i--);后,变量i的值是... 1. 设char ch='a';,执行printf("%d,%c\n",ch,ch+2);后的输出结果是( )? 2. 执行语句for(i=10;i>0;i--);后,变量i的值是( )? for语句格式是for(初值;条件;增值);语句;这道题括号后面没有语句;还能循环吗? 3. 若定义了char ch[]={"abc\0def"},*p=ch;则执行printf("%c",*p+4);语句的输出结果是( )?
4.设char *s="abc";,则while(*s!='\0'){printf("W");s++;}的输出结果是( )?
5. 在C语言中,当调用函数时,实参是一个数组名,则函数传送的是数组的( )? 麻烦分析一下,太感谢了!
展开
 我来答
tian_et
推荐于2016-12-01 · TA获得超过783个赞
知道小有建树答主
回答量:334
采纳率:0%
帮助的人:318万
展开全部
1、%d表示以整数形式输出,对字符'a'来说,整数形式就是它的ASCII码也就是97;%c表示以字符形式输出,ch+2就是ASCII码为99的字符即'c'。答案:97,c
2、for循环分为3个语句,以两个分号间隔,其中语句1(i = 10)只执行一次,然后检查是否满足语句2(i > 0), 这是循环得以继续的条件,一旦不满足这个条件,就跳出循环。再执行跟在for循环之后的语句,我们称为循环体,一般是{}里的代码,但这里没有任何语句,直接就;结束,所以就跳过这一步,然后执行语句3(i--),就是i减1了,此时i = 9,以后都按这样的顺序进行:2->循环体->3->2->循环体->3....直到不满足条件2为止,结束循环。所以,当i减少到1的时候还满足2条件,继续循环体,再执行3语句,此时i变成了0,检查条件2,发现不满足就跳出了循环,所以答案是0
3、char ch[] = {"abc\0def"}定义了一个字符数组ch,*p=ch定义了一个p的字符指针,指向了ch的首地址,*p其实是字符a, 所以*a+4就是'e'
4、WWW 5、首地址
严棠伟雨筠
2020-05-28 · TA获得超过3820个赞
知道大有可为答主
回答量:3123
采纳率:24%
帮助的人:188万
展开全部
char
c;
c=0362;以0开头的数字表示八进制。所以0362,其实是十进制的242,十六进制的0xf2。因为c是有符号类型的,最高位为1表示负数,十六进制的0xf2就是-14的补码,所以显示的是-14
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4ebf3c0c9
2012-08-04 · 超过11用户采纳过TA的回答
知道答主
回答量:66
采纳率:0%
帮助的人:29.7万
展开全部
1、97,c
2、0
3、e
4、WWW>5、地址(或 首元素的地址)。
void XXX(char* ch);
ch为数组名 *ch 为指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leiyangbdwk
2012-08-04 · TA获得超过3295个赞
知道大有可为答主
回答量:4975
采纳率:12%
帮助的人:4350万
展开全部
97,c
0

e
eWWW
首元素的指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式