c语言的问题?

.当从键盘输入18时,下面程序的运行结果是。main(){intx,y,i,a[8],j,u,v;scanf(“%d”,&x);y=x;i=0;do{u=y/2;a[i]... . 当从键盘输入18时,下面程序的运行结果是 。

main()

{ int x,y,i,a[8],j,u,v;

scanf(“%d”,&x);

y=x; i=0;

do

{ u=y/2;

a[i]=y%2;

i++; y=u;

} while(y>=1);

for(j=i-1;j>=0;j--)

printf(“%d”,a[j]);

}
展开
 我来答
魘传说
2019-12-08 · TA获得超过1116个赞
知道小有建树答主
回答量:1641
采纳率:88%
帮助的人:117万
展开全部

这个代码的作用就是利用do while将数组算出来,然后利用for循环遍历,倒序输出数组。
我感觉很奇怪,devc++出来的结果是10010。
我算出来的结果应该是00010,因为强转int类型应该是取0的,而不是取1.
然后我用c++试了多个数字,发现所有的结果都是以1开头,至于为什么我也不知道,希望题主得到答案后能够分享给我,万分感谢。
没有解释明白,不必采纳。




1.当x输入为18
y=18;i=0
u=9;a[0]=0;i=1;y=9;
while(9>=1);
再执行do语句

2.第二个do循环
u=9/2;a[1]= 1 ;i=2;y=9/2;
while(9/2>=1);
3.第三个do循环
u=9/4;a[2]= 9/2 %2=1/2 ;i=3;y=9/4;
while(9/4>=1)
4.第四个for循环
u=9/8;a[3]= 9/4 %2=1/4 ; i=4; y=9/8;
while(9/8>=1);
5.第五个for循环
u=9/16;a[4] = 9/8 %2 = 9/16; i=5; y=9/16;
while(9/16>=1)[不成立,因此不再执行上面的do语句,而执行下面的for循环]
for(j=4;j>=0;j--) [成立]
输出a[4]
for(j=3;j>=0;j--)[成立]
输出a[3]
for(j=2;j>=0;j--)[成立]
输出a[2]
for(j=1;j>=0;j--)[成立]
输出a[1]
for(j=0;j>=0;j--)[成立]
输出a[0]

则,当输入18时,输出a[4]a[3]a[2]a[1]a[0]

追问
9/8 %2 = 9/16    这是1吧,不是0
追答
哦哦哦  对对对哈哈哈哈
是取余,只有0和1 不是除
不好意思哈哈哈
盖健魏河
2019-12-15 · TA获得超过3649个赞
知道大有可为答主
回答量:2964
采纳率:30%
帮助的人:443万
展开全部
那得看具体情况了,要是有int
a=1,*q=&a,**p=&q;p就是指向指针的指针,它的值只能是指针的地址,这样的话*p就是q,而q就是&a,所以**p就是*q,也就是a,这样讲明白了吧LZ,望采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
用材蒋安梦
2019-12-10 · TA获得超过3831个赞
知道大有可为答主
回答量:3261
采纳率:34%
帮助的人:244万
展开全部
**P这个指针等价于*(*p) ,是一个二重指针,首先p存放放的是一个变量的地址,*p就是p】存放的变量的地址存放的数据,即变量的值,由于该变量的值还是存放一个地址,所以*(*p)表示*p存放的地址值指向的地址存放的数据。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
青和丛驰海
2019-12-10 · TA获得超过3736个赞
知道大有可为答主
回答量:3008
采纳率:28%
帮助的人:250万
展开全部
现在都出到第四版了吧
不过
那书我都看了
内容没什么大变化
属于换汤不换药的
随便买一本
但是一定要认真看才好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
岑密谯思佳
2020-03-17 · TA获得超过3679个赞
知道小有建树答主
回答量:3084
采纳率:30%
帮助的人:423万
展开全部
关键在于cuntinue这个语法的应用。continue的意思是不执行本次循环cuntinue以后的语句。所以第二个是对的第一个是错的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(9)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式