设有定义语句int(*f)(int);,则以下叙述正确的是(  )。

A.f是基类型为int的指针变量
B.f是指向函数的指针变量,该函数具有一个int类型的形参
C.f是指向int类型一维数组的指针变量
D.f是函数名,该函数的返回值是基类型为int类型的地址

【答案】:B

本题考查的是指向函数的指针。语句“int(*f)(int);”是对一个函数的声明,其中f是指向该函数的指针,该函数有一个整型的参数,函数返回值类型为整型。故答案选B)。
温馨提示:内容为网友见解,仅供参考
无其他回答

设有定义语句int(*f)(int);,则下列叙述正确的是( )。
【答案】:B B。【解析】定义语句int(*f)(int)中f是指向函数的指针变量,该函数中也只有一个int型的形参。

已知int i;float f;,由以下选项中正确的语句是()。
正确的语句是答案D,也就是说“(int)f%i;”是正确的编程语句。选项分析:A选项为语法错误,取余运算符的左右两边应该是整形的变量,所以说表达式中括号的意思应该是要进行类型的转换,强制类型转换为在变量的前面加上“(类型)”,所以说A选项正确的形式为:“(int)f%i;”。B选项也是语法的错...

若有定义:int b[3][4]={0};则下述正确的是( ) 。 A. 此定义语句不正确...
元素是,行长度*列长度 3*4=12 定义 int b[m][n] m*n b[0][0] b[0][1] b[0][2] b[0][3]b[][] b[][] b[][] b[][] b[][]b[][] b[][] b[][] b[][] b[][]b[][] b[][] b[][] b[][] b[][](我不想打太多了...)。二维数组取值是按=...

下半年计算机二级c语言基础试题
7. 设有定义:struct{intn;floatx;}s[2],m[2]={{10,2.8},{0,0.0}};,则以下赋值语句中正确的是( )。 A. s[0]=m[1]; B. s=m; C.s.n=m.n; D. s[2].x=m[2].x; 【答案】A 【解析】定义了结构体类型数组s,长度为2,结构体类型数组m,长度为2,并对数组m进行了初始化。同类型的结...

若有定义:int a; float x; 则下面正确的输入函数调用语句是( )?
选C 分析:%d对应int,%f对应float,scanf的参数需要取址符&,所以选C。

(C语言)已知int i; float f;以下选项中正确的语句是?
D.(int)f%i正确先通过强制类型转换把浮点数转为整数再进行整数的取余计算。其它答案的括号位置不当,编译会报错。

程序段如下:则以下说法中正确的是( )
选D,只执行一次,do(语句块)while(条件)这样的循环是先执行再判断,最少执行一次。这里,先执行语句块,k--,此时k=4,不满足k<=0,退出循环,故只执行一次。

求教C语言int (*f)()是什么?
int (*f)()则是一个函数指针。指向一个 int f() 这样的函数。比如有函数:int get1() { return 1; } int get2() { return 2; } int main(){ int (*pf)();\/\/ pf是一个函数指针,参数为空,返回int pf = get1;\/\/ pf保存 get1函数入口地址。 注意,不是 pf = get1()...

若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是( )。A.p=...
【答案】: C 解析:声明了a是一个二维数组,p是长度为3的int *数组。C项正确,p[0]是int类型指针,可以指向二维数组中的元素。B项错误,p[0]是int类型指针,不能指向二维数组;A项错误,p是int类型指针的数组,一旦定义,不能再次赋值;D项错误,p[1]是int类型的指针,&a是二维数组的地址。

7. 设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是...
n是整数,p是整数指针,q是双重指针。A:p=1 属于将地址1赋给p,非法。B:*q=2 这里*q相当于一个整数指针,问题同上,非法。C:q=p 相当于把p的地址赋给q,不能说错,但是不同维数的指针互相赋值,容易出错。以上三种都是编译没有问题。D比较符合规范而已。

相似回答
大家正在搜