这两道c语言题怎么做?

谢谢
2025-03-07 09:09:51
推荐回答(3个)
回答1:

(8)的结果应该是534;(10)的结果应该是abc
解析:(8)赋值a=4,b=3,c=5,t=0,判断a和b的大小,a(10)赋值a=3,a--相当于a-1=2<3成立,所以直接执行后面的语句,输出abc

回答2:

第一题解析如下:

#include 
int main()
{
   int a=4,b=3,c=5,t=0;//执行后:a=4,b=3,c=5,t=0;
      if(a       t=a;   //不执行
      a=b;//执行后:a=3,b=3,c=5,t=0;
      b=t;//执行后:a=3,b=0,c=5,t=0;
      if(a       t=a; //执行 执行后:a=3,b=0,c=5,t=3;
      a=c;//执行后:a=5,b=0,c=5,t=3;
      c=t;//执行后:a=5,b=0,c=3,t=3;
      printf("%d,%d,%d\n",a,b,c);//输出:5,0,3
}

运行结果:
5,0,3

第二题解析如下:

#include 
int main()
{
    int a=3;
if(a--<3)
printf("abc\n");
else
printf("123\n");

//解析如下:
//a--表示先使用a,再对a进行减1的操作
//--a表示先对a进行减1的操作,再使用a
//所以if(a--<3)等价于==>if(a<3) a=a-1;
//所以if...else...代码块可写为:
int b=3;
if(b<3){
b=b-1;
printf("abc\n");
}else
printf("123\n");
}

运行结果:
123
123

楼主若觉得回答有所帮助,望采纳,谢谢!

回答3:

这两道c语言题怎么做?