更多“已有定义 int k=2;int *ptr1,*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是()。”相关问题
  • 第1题:

    若已有定义int x;下列说明指针变量p指向x的正确语句是( )

    A. int p=&x;

    B. int *p=&x;

    C. int p=x;

    D. int *p=x;


    正确答案:B

  • 第2题:

    已有定义“int k=2;int*ptr1, *ptr2;”,且ptr1和ptr2均已指向变量k,下面不能正确执行的语句是______。

    A.k=*ptr1+*ptr2;

    B.ptr2=k;

    C.ptr1=ptr2;

    D.K=*ptr1*(*ptr2);


    正确答案:B

  • 第3题:

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

    main()

    { static char a[]="language",b[]="program";

    char *ptrl=a,*ptr2=b;

    int k

    for(k=0;k<7;k++)

    if(*(ptrl+k)==*(ptr2+k))

    printf("%c",*(ptr1+k));}


    正确答案:

  • 第4题:

    已有定义“int k=2;int*ptr1,*ptr2;”,且ptr1和ptr2均已指向变量k,下面不能正确执行的语句是______。

    A.k=*ptr1+*ptr2;

    B.ptr2=k;

    C.ptrl=ptr2;

    D.K=*ptr1*(*ptr2);


    正确答案:B

  • 第5题:

    下面程序的输出结果是( )。 include main(){static chara[]="zhao",b[]="juan"; char*pt

    下面程序的输出结果是( )。 include<stdio.h> main() {static chara[]="zhao",b[]="juan"; char*ptr1=a,*ptr2=b; int k; for(k=0;k<4;k++) if(*(ptr1+k)==*(ptr2+k)) printf("%c",*(ptr1+k));}


    正确答案:a
    a 解析:本程序先将指针ptr1和ptr2分别指向字符数组a和b,然后通过指针的移动比较a和b中是否有相同的字符。若有相同的字符则将其输出。

  • 第6题:

    设p1和p2是指向一个血型一维数组的指针变量,k为int型变量,则不能正确执行的语句是

    A.k=*p1+*p2

    B.p2=k;

    C.p1=p2;

    D.k=*p1*(*p2);


    正确答案:B
    解析: 本题主要考查了一维数组指针的赋值和用指针引用数组元素进行运算。选项B)中p2为指向int型变量的指针,而k为int型变量,不能将int型变量直接赋值给指向int型变量的指针,所以选项B)错误。

  • 第7题:

    在整型指针变量ptr1、ptr12的定义中,错误的是 ______。

    A.int x, *ptr1, ptr2;

    B.int*ptrl, x, *ptr2;

    C.int x,*ptrl=&x,*ptr2;

    D.int*ptr1, x,*ptr2=&x;


    正确答案:B

  • 第8题:

    若变量a,i已正确定义,且i已正确赋值,下面合法的语句是( )。

    A.a==1

    B.++i;

    C.a=a++=5;

    D.a=int(i);


    正确答案:B
    解析:选项A)缺少分号,是一个表达式,而不是语句;选项C)包含一个不合法的运算符“++=”;选项D)应改为a=(int)i;。

  • 第9题:

    已有定义int k=2; int *ptrl, *ptr2,且ptr1和ptr2 均已指向变量k,下面不能正确执行的赋值语句是()

    • A、k =*ptr1+*ptr2;
    • B、ptr2 = k;
    • C、ptr1=ptr2;
    • D、k = *ptr1*(*ptr2);

    正确答案:B

  • 第10题:

    已有定义int k=2;int*ptr1,*ptr2;且ptr1、ptr2均已指向变量k,下面不能正确执行的赋值语句是()

    • A、k=*ptr1+*ptr2
    • B、prt2=k;
    • C、ptr1=ptr2
    • D、k=*ptr1*(*ptr2)

    正确答案:B

  • 第11题:

    若k为int整型变量且赋值7,请写出赋值表达式k*=k+3的运算结果()。


    正确答案:70

  • 第12题:

    填空题
    若k为int整型变量且赋值7,请写出赋值表达式k*=k+3的运算结果()。

    正确答案: 70
    解析: 暂无解析

  • 第13题:

    语句int*p=&k;定义了指针p,与这个语句等效的语句序列是A.int*p;p=&k;B.int*p;k=k;C.int*p;*p=&am

    语句int*p=&k;定义了指针p,与这个语句等效的语句序列是

    A.int*p;p=&k;

    B.int*p;k=k;

    C.int*p;*p=&k;

    D.int*p;*p=k;


    正确答案:A

  • 第14题:

    设pl和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是( )。

    A.k=*pl+*p2

    B.p2=k;

    C.pl=p2;

    D.k=*pl*(*p2.;


    正确答案:B
    本题主要考查了一维数组指针的赋值和用指针引用数组元素进行运算。选项B)中p2为指向int型变量的指针,而k为int型变量,不能将int型变量直接赋值给指向int型变量的指针,所以选项B)错误,应该为p2=&k。

  • 第15题:

    下面函数的功能是______。 exchange(int*ptr1,*ptr2) { int*ptr; ptr=-ptr1; ptr1=ptr2; ptr2=ptr; }

    A.交换*ptr1和*ptr2的值

    B.无法改变*ptr1和*ptr2的值

    C.可能造成系统故障,因为使用了空指针

    D.交换*ptr1和*pb2的地址


    正确答案:B
    解析:函数中将指针变量ptr1和ptr2中的值交换,而不是交换指针ptr1和ptr2所指变量中的值。

  • 第16题:

    设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是

    A.k=*p1+*p2

    B.p2=k;

    C.p1=p2;

    D.k=*p1*(*p2);


    正确答案:B
    解析:本题主要考查了一维数组指针的赋值和用指针引用数组元素进行运算。选项B)中p2为指向int型变量的指针,而k为int型变量,不能将int型变量直接赋值给指向int型变量的指针,所以选项B)错误。

  • 第17题:

    设有如下定义: int arr[]={6,7,8,9,10); int*ptr: ptr=arr; *(ptr2)=2; printf("%d,%d\n",*ptr,*(ptr2)): 则下列程序段的输出结果为( )。

    A.8,10

    B.6,8

    C.7,9

    D.6,2


    正确答案:D
    程序中ptr指针指向数组art的首地址,*ptr=arr[0]=6,*(ptr2)=2,故选D。

  • 第18题:

    以下程序段的输出为( ) static char a[]="language",b[]="progratne"; char *ptr1,*ptr2; int k; ptr1=a;ptr2=b; for(k=0;k<7;k++) if(*(ptr1+k)==*(ptr2+k)) printf("%c",*(ptr1+k));

    A.gae

    B.ga

    C.language

    D.有语法错误


    正确答案:B

  • 第19题:

    设q1和q2是指向一个int型一维数组的指针变量,k为float型变量,下列不能正确执行的语句是( )。


    正确答案:B
    本题考查指针变量的赋值操作。选项A)是将指针q1和q2所指向的变量值相乘,然后赋给k;选项B)中,noat型数据和指针型数据之间不能进行赋值运算;选项C)中,是两个指针变量之间的赋值;选项D)中,是两个指针型变量所指向的两个int型数据相加。

  • 第20题:

    设p1和p2均为指向int型的指针变量,k为int型变量,下列不正确的赋值语句是(C)。

    A.k=*p1+*p2

    B.k=*p1*(*p2)

    C.p2=k

    D.p1=p2


    正确答案:C

  • 第21题:

    下面关于变量定义且赋值语句正确的是()

    • A、int a=12;
    • B、int a=12.5;
    • C、int a=”12”;
    • D、int a=’12’;

    正确答案:A

  • 第22题:

    已有定义intk=2,*ptr1,*ptr2;且ptrl和Ptr2均已指向变量k,下面能正确执行的赋值语句是()

    • A、k=*ptrl+*ptr2;
    • B、ptr2=k
    • C、*ptrl=ptr2;
    • D、ptrl=*ptr2;

    正确答案:A

  • 第23题:

    单选题
    若已定义:int x=12;对①int *p=&x;和②*p=x;这两条语句的正确理解是()
    A

    语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p所指向的变量

    B

    语句①和②中的*p含义相同,都表示给指针变量赋值

    C

    语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p

    D

    语句①和②的执行结果都是把变量x的地址赋给指针变量p


    正确答案: B
    解析: 暂无解析

  • 第24题:

    单选题
    已有定义int k=2; int *ptrl, *ptr2,且ptr1和ptr2 均已指向变量k,下面不能正确执行的赋值语句是()
    A

    k =*ptr1+*ptr2;

    B

    ptr2 = k;

    C

    ptr1=ptr2;

    D

    k = *ptr1*(*ptr2);


    正确答案: C
    解析: 暂无解析