更多“下列程序执行后的输出结果是( )。main{int x=f;printf("%c\n",A+(x-a+1));}A.GB.HC.ID. ”相关问题
  • 第1题:

    以下程序的输出结果是( )。 includefun(){ int a=0;a+=3;printf("%d",A); } main() {int

    以下程序的输出结果是( )。

    include<stdio.h>

    fun()

    { int a=0;

    a+=3;

    printf("%d",A);

    }

    main()

    { int cc;

    for(cc=1;cc<=4;cc++)

    fun();

    printf("\n");

    }


    正确答案:3 3 3 3
    3 3 3 3 解析:本题考查for循环,for(cc=1;cc=4;cc++)表示循环4次,a+=3表示每次a的值增加3,但是子函数中没有将变量a定义为static类型,所以每次调用完子函数之后,变量a所做的改变都不能保存,这样在下一次调用子函数时,a的初值仍是0,所以不管调用多少次,子函数输出始终是3。

  • 第2题:

    下列程序执行后的输出结果是( )。 main {int x=f;printf("%c\n",A+(x-a+1));}

    A. G

    B.H

    C.I

    D.J


    正确答案:D
    因为x=f,所以写成A+(x-a+1)=A+(f-a+1)=A+6=J,故选择D选项。

  • 第3题:

    下列程序执行后的输出结果是______。 main () {int x='f'; printf("%c \n",'A'+(x-'a'+l)); }

    A.G

    B.H

    C.I

    D.J


    正确答案:A

  • 第4题:

    以下程序的输出结果是main(){ int x=0; sub(&x,8,1); printf("%d\n",x);}sub(int *a,int n,int k){ if(k<=n) sub(a,n/2,2*k); *a+=k;}


    正确答案:7
    本题属于递归调用。主函数中调用sub函数流程如下:
    sub(*x,8,1)-sub(*x,4,2)-sub(*x,2,4)-x=x+k=4,然后是4+2=6,最后是 6+1=7 
    由此可知,输出结果为7。

  • 第5题:

    有如下程序#include "stdio.h"void fun(int *a,int *b){ int m; m=(*a+*b)*(*a+*b); m+=(*a-*b)*(*a-*b); printf("%d\n",m);}main(){ int a=5,b=6,*x=&a,*y=&b; fun(x,y);}程序执行后输出的结果为A.120 B.121 C.122 D.123


    正确答案:C
    在本题程序中,首先定义了一个fun函数,函数带有两个指针变量的形参,在程序体中,定义一个整型变量m用来保存计算的结果,然后执行第一条运算语句,并将运算结果保存至变量m,然后执行第二条运算语句,最后输出程序m的值。
    在主函数中,首先定义两个整型变量a和b,并分别赋值为5和6,定义两个指针变量x和y,分别指向变量a和b。然后调用函数fun,调用函数传递的参数为x和y,因此,执行m=(*a+*b)*(*a+*b)=(5+6)*(5+6)=121,然后执行m+=(*a-*b)*(*a-*b)等价于m=m+(-1)*(-1)=121+1=122。因此,本题程序的输出结果为122,答案选C。