函数参数array,ptr都是指针变量
函数参数array不是指针变量,ptr是指针变量
调用函数时,实参数组的值将一一复制给array数组
调用函数时,array是按值传送,ptr是按地址传送
第1题:
设有以下函数
void fun(int n,char * s) { …… }
则下面对函数指针的定义和赋值均是正确的是
A)void (*pf)(); pf=fun;
B)viod *pf(); pf=fun;
C)void *pf(); *pf=fun;
D)void (*pf)(int,char);pf=&fun;
第2题:
若已经声明了函数原型“void fun(int a,double b=0.0);”,则下列重载函数声明中正确的是( )。
A.void fun(int a=90,double b=0.0);
B.int fun(int a,double B);
C.void fun(double a,int B);
D.bool fun(int a,double b=0.0);
第3题:
若有以下函数首部
int fun(double x[10], int *n)
则下面针对此函数的函数声明语句中正确的是
A)int fun(double x, int *n);
B)int fun(double , int );
C)int fun(double *x, int n);
D)int fun(double *, int *);
第4题:
若有以下变量定义和函数调用语句: int a=5; fun(&a); 则执行下面函数后正确的输出结果是( )。 void fun(int*x) { cout<<++*x<<end1; }
A.3
B.4
C.5
D.6
第5题:
main函数中发生编译错误的语句是______。
include<iostream.h>
class A
{
public:
int a;
const int b;
A( ):a(10),b(20){}
void fun( )const
{
cout<<"a="<<a<<"\tb="<<b<<endl;
}
};
void main( )
{
A obj1;
const A*ptr=new A;
ptr=&obj1;
ptr->a=100;
ptr->fun( );
}
第6题:
下列函数原型声明中错误的是
A.void Fun(int x=O,int y=0);
B.void Fun(int x,int y);
C.void Fun(int x,int y=0);
D.void Fun(int x=0,int y);
第7题:
若各选项中所用变量已正确定义,fun()函数中通过return语句返回一个函数值,下列选项中错误的程序是( )。
A.main() {……x=fun(2,10);……} float fun(int a,int b){……}
B.float fun(int a,int b){……} main() {……x=fun(i,j);……}
C.float fun(int,int); main() {……x=fun(2,10);……} float fun(int a,int b){……}
D.main() {float fun(int I,intj); ……x=fun(i,j);……} float fun(int a,int b){……}
第8题:
若各选项中所用变量已正确定义,函数 fun 中通过 return 语句返回一个函数值,以下选项中错误的程序是
A)
main()
{ …… x=fun(2,10); …… }
float fun(int a,int b){ …… }
B)
float fun(int a,int b){ …… }
main()
{ …… x=fun(i,j); …… }
C)
float fun(int,int);
main()
{ …… x=fun(2,10); …… }
float fun(int a,int b) { …… }
D)
main()
{ float fun(int i,int j);
…… x=fun(i,j); …… }
float fun(int a,int b){ …… }
第9题:
若有以下调用语句,则不正确的fun函数的首部是______。 main() { …… int a[50],n; fun(n,&a[9]); …… }
A.void fun(int m, int x[])
B.void fun(kit s, kit h[41])
C.void fun(kit p, kit *s)
D.void fun(int n, int a)
第10题:
若有以下函数首部: int fun(double x[10],int *n) 则下面针对此函数的函数声明语句中正确的是( )。
A.int fun(double x, int *n);
B.int fun(double, int);
C.int fun(double *x, int n);
D.int fun(double*, int*);