大家看看这两道C题怎么做,请写出解题思路

1.{inti,j,k=19;while(i=k-1){k-=3;if(k%5==0){i++;continue;}elseif(k<5)break;i++;}print... 1.{int i,j,k=19;
while(i=k-1)
{k-=3;
if(k%5==0){i++;continue;}
else if(k<5)break;
i++;
}
printf("i=%d,k=%d",i,k);
}
2.{int a,y;
a=10;y=0;
do
{a+=2;y+=a;
if(y>50)break;
}while(a=14);
printf("a=%d y=%d",a,y);
}
展开
 我来答
拥云庄主
2010-08-23 · TA获得超过2505个赞
知道小有建树答主
回答量:672
采纳率:100%
帮助的人:430万
展开全部
int i,j,k=19;//定义局部变量
while(i=k-1)//k-1的值赋给i,只要i>0则执行循环体
{
k-=3;//k=k-3
if(k%5==0)//如果能整除5则i++,跳出本次循环
{
i++;
continue;
}
else if(k<5)//如果k<5中断循环
break;
i++;//i=i+1
}
printf("i=%d,k=%d\n",i,k);
结果:i=6,k=4

int a,y;
a=10;
y=0;
do
{
a+=2;//a=a+2,一开始,a=10,所以,a=12
y+=a;//y=y+a,y
if(y>50)//当y>50时中断循环
break;
}while(a=14);//a赋值为14,条件恒真,所以,while循环会一直执行,直到y>50时中断
printf("a=%d y=%d\n",a,y);
结果:a=16,y=60
lonerzf
2010-08-23 · TA获得超过192个赞
知道小有建树答主
回答量:584
采纳率:0%
帮助的人:318万
展开全部
题一:while(i=k-1) i先是19-1=18 k=19-3=16 循环,再i=16-1=15,k=16-3=13 继续 i=13-1=12,k=13-3=10;i++ ==13,继续;1=10-1=9,k=10-3=7;继续,i=7-1=6,k=7-3=4;最后,i=4-1=3 <5,k=4-3=1;跳出循环。结束。
题二:a=10+2=12;y=12;继续 a=14+2=16;y=12+16=28;继续a=14+2=16,y=28+16=42,最后,a=14+2=16,y=42+16=58.跳出循环。结束。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式