下列程序段的输出结果是______。 int x=5,y=4,z; printf("%d\n",z+=1,z=x%y);A.0B.1C.2D.结果是不确定值

题目

下列程序段的输出结果是______。 int x=5,y=4,z; printf("%d\n",z+=1,z=x%y);

A.0

B.1

C.2

D.结果是不确定值


相似考题
更多“下列程序段的输出结果是______。int x=5,y=4,z;printf("%d\n",z+=1,z=x%y);A.0B.1C.2D.结果是不确 ”相关问题
  • 第1题:

    设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。A.1SX

    设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。

    A.1

    B.0

    C.4

    D.3


    正确答案:D

  • 第2题:

    若有以下程序段;includeusing namespace std;int main(){ int a[]={1,4,5}; int *p=&

    若有以下程序段; #include<iostream> using namespace std; int main() { int a[]={1,4,5}; int *p=&a[0],x=6,y,z; for(y=0;y<3;y++) z=((*(p+y)<x) ? *(p+y):x); cout<<z<<end1; return 0; } 程序运行后的输出结果是( )。

    A.1

    B.4

    C.5

    D.2


    正确答案:C
    解析:本题考核指针的运算。①程序首先定义了一整型数组a,并赋初值1,4,5。即a[0],a[1]和a[2]的值分别为1,4和5。程序还定义了一个整型指针p,并初始化它指向数组元素a[0]。②在for循环语句中,赋值语句“z=((*(p+y)x)?*(p+y):x);”可等价为:“z=(aly]x)?a[y]:x”。因为表达式中的“*(p+y)=p[y]=a[y]”。③for语句每循环一次,就给变量z重新赋值一次,z的值其实就是数组和x相比较,将数组a中的最大值赋给z。当y=2后,退出循环,输出结果是5。

  • 第3题:

    3、执行以下程序段,输出结果是:()int x=1,y=2,z=3; if(x>y)  if(y<z) printf("%d",++z);   else printf("%d",++y); printf("%d\n",x++);

    A.331

    B.41

    C.2

    D.1


    A. 7,21

  • 第4题:

    以下C程序段的输出结果是(30)。 include void prt(int*x,Int*y,int*z){ printf(

    以下C程序段的输出结果是(30)。 #include<stdio.h> void prt(int*x,Int*y,int*z){ printf("%d,%d,%d\n",++*x,++*y,*(z++)); } void main(){ int a=10,b=40,c=20; Prt(&a,&b,&c); Prt(&a,&b,&c); }

    A.11,42,31 12,22,41

    B.11,41,20 12,42,20

    C.11,21,40 11,21,41

    D.11,41,20 12,42,22


    正确答案:B
    解析:C语言不但可以通过传值的方式进行函数调用,还可以通过传递指针的值(变量的地址)来达到修改实参变量值的目的,这是本试题主要说明的问题。其次,应注意表达式*(z++)的值是*z,其后的z++是使指针z指向下一个整数,在程序中无实际作用。函数调用时,由于x、y和z分别指向a、b和c,因此,*x、*y和*z就是a、b和c。第1次调用函数时,*x=a=10,*y=b=40,*z=c=20,输出结果为11,41,20。同时注意到运算符。和++的运算优先级别相同,遵循右结合性。则*z++与*(z++)作用相同,但(*z)++含义不同。(*z)++的含义是c变量值的自增。因此第2次调用函数时,输出结果为12,42,20。

  • 第5题:

    若有如下程序: main() {int x=3,y=4,z; z=(x+(y-=X*X)); printf("%d,%d\n",y,z); } 则程序执行后的输出结果是( )。

    A.-4,2

    B.-5,-2

    C.-5,-1

    D.4,-2


    正确答案:B
    解析:因为x的初始值为3,所以x*x=9,而y的初始值为4,所以y-=9后,y为-5,z=(x+(y-=x*x))=3+(-5)=-2。故程序执行后的输出结果是-5,-2,选项B正确。