更多“以下程序的正确运行结果是( )。int d=1;fun(int p){ int d=5;d+=p++;printf("%d,d);}main(){ int a=3;fun(a);d+=a++;printf("%dn,d);} ”相关问题
  • 第1题:

    下列程序执行后输出的结果是_______。 int d=1; fun(int p), { int d=5; d+=p++; printf("%d,",d) } main() { int a=3; fun(a) ; d+=a++; printf("%d\n"d) ; }

    A.8,12

    B.9,13

    C.8,4

    D.9,5


    正确答案:C
    解析:本题执行过程如下:首先调用fun函数,使得实参a的值3传递给形参p,得到局部变量d=8,打印出局部变量d的值8;返回主函数执行“d+=a++”,此处d为全局变量,所以d=1+3+4(由于本题是值传递,所以在函数run中对p值的改变并不能引起a 的改变),故本题材的输出是8,4。

  • 第2题:

    下列程序执行后输出的结果是( )。 int d=1; fun (int p) { int d=5; d + =p + +; printf("%d,",d); } main( ) { int a=3; fun(a); d + = a + +; printf("%d\n",d); }

    A.8, 4

    B.9, 6

    C.9, 4

    D.8, 5


    正确答案:A

  • 第3题:

    下列程序执行后输出的结果是 ______。int d=1;fun(int p){ int d=5; d+=p++; printf("%d,",D) ;}main(){ int a=3; fun(A) ; d+=a++; printf("%d\n",D) ;}

    A.8,12

    B.9,13

    C.8,4

    D.9,5


    正确答案:C
    解析:本题执行过程如下首先调用fun函数,使得实参a的值3传递给形参p,得到局部变量d=8,打印出局部变量d的值8;返回主函数执行“d+=a++”,此处的d为全局变量,所以d=1+3=4(由于本题是值传递,所以在函数fun中对p值的改变并不能引起a的改变),故本题的输出是8,4。

  • 第4题:

    以下程序的输出结果是______。 fun(int**p,int a[2][3]) {**p=a[1][2]; } main() { int a[2][3]=}1,3,5,7,9,11},*p; p=(int*)malloc(sizeof(int)); fun(&p,a) ; printf("%d\n",*p); }

    A.9

    B.7

    C.1

    D.11


    正确答案:D
    解析:主函数中指针变量指向两字节的存储空间,这两个字节可以存放 int型数据,函数fun是将实参数组a中的元素a[1][2]的值11赋给指针变量p所指的存储空间,程序输出该空间的值。本题函数fun中形参p是二级指针变量,它指向实参指针变量p。

  • 第5题:

    以下程序运行后,输出结果是______。 int d=1; fun(int p) { int d=5; d+=p++; printf("%d",d); } main() { int a=3; fun(a); d+=a++; printf("%d\n",d); }

    A.84

    B.99

    C.95

    D.44


    正确答案:A