若定义 int k, a[10], *p=a; 那么下面表达式不能被编译的是_______.A.a++;B.p++;C.a[0] = k;D.p[0] = k;
若定义 int k, a[10], *p=a; 那么下面表达式不能被编译的是_______.
A.a++;
B.p++;
C.a[0] = k;
D.p[0] = k;
参考答案和解析
A
相关考题:
下列函数的运行结果是main(){ int i=2,p;int j,k;j=i;k=++i;p=f(j,k);printf("%d",p);}int f(int a,int b){ int c;if(ab)c=1;else if(a==b)c=0;else c=-1;return(c);}A.-1B.1C.2D.编译出错,无法运行
( 20 )语句 int *p=k; 定义了指针 p ,与这个语句等效的语句序列是A ) int *p;p=k;B ) int *p;p=k;C ) int *p;*p=k;D ) int *p;*p=k
若类A和类B的定义如下:includeclass A{int i,j;public:int geti(){return i;}};class 若类A和类B的定义如下: #include<malloc.h> class A { int i,j; public: int geti() { return i; } }; class B:public A { int k; public: void make() { k=i*j; } }; 则上述定义中非法的表达式是( )。A.k=i*jB.int k;C.return i;D.void make();
阅读下列程序段#include "stdio.h"typedef struct aa{ int a;struct aa *next; } M;void set(M *k,int i,int *b){ int j,d=0;for(j=1;j i;j++){ k[j-1].next=k[j];k[j-1].a=b[d++]; }k[j].a=b[d]; }main(){ M k[5],*p;int d[5]={23,34,45,56,67};set(k,5,d);p=k+1;printf("%d\n",table); }则下面的表达式在table处,能使程序执行后,打印输出数据45的是A.p-next-aB.++p-aC.(*p).a++D.p++-a
分析下面的代码行 float f=3.2; int i=f; ,不正确地的答案是() A、代码不能编译B、代码编译,i被设置为3C、第二行若改为inti=(byte)f则可编译D、第一行若改为floatf=3.2f则可编译
下面程序的功能是输出数组s中最小元素,请填空。 include void main(){int k, p, s[]= 下面程序的功能是输出数组s中最小元素,请填空。include<iostream.h>void main(){int k, p, s[]={1,-9,7,2,-10,3};k=s[0];for(p=0;p<6;p++)if(s[p]<k) 【 】;cout<<k;}
若类A和类B的定义如下:includeclass A{int i*j;public:int geti(){return i;}};class 若类A和类B的定义如下: #include<malloc.h> class A { int i*j; public: int geti() { return i; } }; class B: public A { int k; public: void make() { k=i*j; } ); 则上述定义中非法的表达式是( )。A.k=i*j;B.int k;C.return i;D.void make();
若类A和类B的定义如下: class A [ int i,j; public: int geti() { return i; } }; class B:public A { int k; public: void make() { k=i*j; } }; 则上述定义中非法的表达式是A.k=i*jB.int k;C.retum i;D.void make()
若类A和类B的定义如下: class A { public: int i,j; void get(); }; class B:A{ int i, j; protected; int k; public: void make(); }; void B: :make()(k=i*j;} 则其中 ______ 是非法的表达式。A.void get();B.int k;C.void make();D.k=i*j;
若类A和类B的定义如下: class A { int i,j; public: void get(); //… } ; class B:A//默认为私有派生 { int k; public: void make(); //… }; void B::make() { k=i*j; } 则上述定义中, ( )是非法的表达式。A.void get();B.int k;C.void make();D.k=i*j;
已知类X的定义如下,为了实现将对象成员k的值修改为678,下面的哪条语句是正确的 ______。 class X{ private: int k; public: K(int n){k=n;} set(int n){k=m;} }; void fun(){ X a(10),*p=a; ______ }A.p->set(678);B.X(678):C.p->k=678;D.p.set(678);
分析下面的代码行 float f=3.2; int I=f; ,错误的是()A、代码不能编译B、代码编译,i被设置为3C、第二行若改为 int i=(byte)f 则可编译D、第一行若改为 float f=3.2f 则可编译
对于下面程序,对p调用正确的是( )。 class A{ public:fun(int i){cout<<i<<endl;} }; main(){ A a; int k=0; void(A::*p)(int); p=A::fun; }A.a.p(k);B.*a.p(k)C.a.*p(k)D.a::*p(k)
有如下定义: int a[5]={1,3,5,7,9},* P=a; 下列表达式中不能得到数值5的是( )。 A.a[2]SXB 有如下定义: int a[5]={1,3,5,7,9},* P=a; 下列表达式中不能得到数值5的是( )。A.a[2]B.a[3]C.*(P+2)D.+P+4
若已定义 struct num{ int a; int b; float f; } n={1,3,5.0}; struct num *p=n; 则表达式p-b/n.a*++p-b的值是 ① ,表达式(*p).a+p-f的值是 ② 。
问答题若已定义 struct num{ int a; int b; float f; } n={1,3,5.0}; struct num *p=n; 则表达式p-b/n.a*++p-b的值是 ① ,表达式(*p).a+p-f的值是 ② 。