更多“以下程序的输出结果是#include <stdio.h>main(){int j, a[]={1,3,5,7,9,11,13,15},*p=a+5; ”相关问题
  • 第1题:

    以下程序的输出结果是【】。includevoid main() {int *p;p=new int;*p=200;cout<<*p;d

    以下程序的输出结果是【 】。

    include<iostream. h>

    void main() {

    int *p;

    p=new int;

    *p=200;

    cout<<*p;

    delete p;

    }


    正确答案:200
    200

  • 第2题:

    有以下程序:includemain(){int.a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;*q

    有以下程序: #include <stdio.h> main() {int.a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL; *q=*(p+5); printf("%d %d\n",*p,*q); } 程序运行后的输出结果是( )。

    A.运行后报错

    B.6 6

    C.6 11

    D.5 10


    正确答案:A
    解析:本题中首先定义了一个—维数组a并初始化,由于定义该数组的时候省略了长度,因此该数组的长度为初始化时候赋初值的个数即为12。数组名a代表数组的首地址,所以*p=a+5语句使得p指向数组的第6个元素,而在程序中定义了一个指针q并让它指向空,实际上程序并没有在内存中为指针q开辟存储空间,这样给q赋值不允许的,故该程序运行后报错。所以,4个选项中选项A符合题意。

  • 第3题:

    以下程序的输出结果是( )。 include void swap(int*a,int*B){int*t; t=a;a=b;b=c;} main

    以下程序的输出结果是( )。 include<stdio.h> void swap(int*a,int*B){int*t; t=a;a=b;b=c;} main() {int i=3,j=5,*p=&i,*q=&j; swap(p,q);printf("%d %d\n",*p,*q); }


    正确答案:3 5
    3 5 解析:本题考查函数中形参和实参的传递。在C语言函数中实参和形参传递具有不可逆性,参数只能由实参传向形参,而不能由形参传向实参,虽然swap函数的功能是实现两个数的交换,但由于没有返回值,故最终的输出结果为3 5。

  • 第4题:

    以下程序的输出结果是______。include void swap(int *a, int *b){ int *t;}{ int i=3,j

    以下程序的输出结果是______。

    include <stdio.h>

    void swap(int *a, int *b)

    { int *t;

    }

    { int i=3,j=5,*p=&i,*q=&j;

    swap(p,q); printf("%d %d\n",*p,*q);


    正确答案:

  • 第5题:

    有以下程序includemain(){int*p,j; p=NULL p=fun(); for(j=0;j<4;j+){printf("%d",*p)

    有以下程序 #include<stdio.h> main() { int *p,j; p=NULL p=fun(); for(j=0;j<4;j+){printf("%d",*p);p++;} } int*fun() { int a[4],k; for(k=0;k<4;k++)a[k]=k; return(A) ; } 程序运行后的输出结果是( )

    A.程序有错不能运行

    B.输出4个NULL

    C.输出0 1 2 3

    D.输出1 1 1 1


    正确答案:A