语言理解的真正问题
下列说法正确的是()
选项:
A.如果用户需要调用标准库函数,必须在调用前重新定义。
b、用户可以重新定义标准库函数,如果这样,函数就失去了原来的意义。
c、用户系统根本不允许用户重新定义标准库函数。
D.如果用户需要调用库函数,在调用前不需要用预编译命令将函数所在的文件包含在用户的源文件中,系统会自动找到该文件。
这个问题的答案是d,标准库函数和任意函数都是函数,允许用户重新定义和使用。使用它们时,只需使用# include
标题:2
下列函数定义的正确形式是()
选项:
a、double fun(int x,int y)
双重乐趣(int x
c、int y)
双重乐趣(int x,int y)
e、双倍乐趣(int x
f、int y)
函数的定义规则如下:;& lt函数名>(函数参数用逗号分隔){函数体}
函数声明的规则如下:;& lt函数名>(函数参数用逗号分隔);
综上所述,这个问题没有正确答案,唯一接近正确答案的是ad。
标题:3
下列不正确的说法是()
选项:
一个同名的变量可以用在不同的函数中。
形式参数是局部变量
c函数中定义的变量只在这个函数范围内有效。
d .函数内复合语句中定义的变量在该函数范围内有效。
C里面有个关键字叫extern,专门把局部变量变成全局变量,所以C是错的。
这个问题的答案是c。
标题:4
建立函数的目的之一,下列正确的说法是()
选项:
一、提高程序的执行效率
b、提高程序的可读性
c、减少节目的长度
减少程序文件占用的内存
这个问题的答案是a,
功能的增加,
b会增加程序的可读性,可以理解,模块化,当然可读性也会增加。
c,可以多次调用一个函数,不用反复写代码。这可以理解。
d、由于重复代码少了,整个程序的大小自然就小了,当然也就减少了程序文件占用的内存。
至于A的效率,这是不成立的,因为函数很多,会频繁的推拉堆栈,增加cpu的工作负荷,整个程序的效率会变低。
标题:5
c语言规定函数返回值的类型由()决定。
选项:
一、返回语句中表达式的类型
b、调用该函数时,主音函数类型
调用这个函数是由系统临时指定的。
d,定义函数时指定的函数类型。
这个可以参考第二个问题,函数的定义规则,当然是由定义的时间决定的。
这个问题的答案是d。
标题:6
任何未在函数中指定存储类别的局部变量都有一个隐式存储类别()。
选项:
答:汽车
b、静态
c、外部
d、注册
这个题目很容易。如果未指定,则自动指定。
这个问题的答案是a。
另一个小知识,我们通常看到int a,b,c;其实省略了auto,都应该是auto int a,b,c;
标题:7
下面这个程序的运行结果是()Void Sub (int x,int y,int * z){ * z = y-x;}main(){int a,b,c;潜水艇
(10,5 & amp;a);sub(7,a,& ampb);子(a,b,和ampc);printf("%4d,%4d,%4d ",a,b,c);}
选项:
一、五、二、三
b 、-5,-12,-7
c 、-5、-12、-17
d、5、-2、-7
void sub (int x,int y,int *z)
{
* z = y-x;
}
主()
{
int a,b,c;
sub(10,5 & amp;a);执行完这句话,a的值是-5;
sub(7,a,& ampb);执行完这句话,b的值是-12;
子(a,b,和ampc);执行完这句话,c的值是-7。
printf("%4d,%4d,%4d ",a,b,c);
}
答案是b;
标题:8
如果将数组名用作函数调用的实参,则传递给形参的是()。
选项:
数组的第一个地址
b,数组第一个元素的值
C.数组中所有元素的值
d,数组元素的个数
这个问题的答案是a
该数组被命名为数组的第一个地址和数组第一个元素的值的地址。数组名是一个地址。
标题:9
如果使用一位数组名作为函数参数,下面的说法是正确的: ()
选项:
a,这个数组的大小必须在主音函数中说明。
参数数组的类型和形状参数组的类型可能不匹配。
c、在调谐函数中,不需要考虑形状参数组的大小。
d、实参数数组名和形参数组名必须相同。
这个问题的答案是a,
数组的大小必须在tonic函数中定义。也就是说,应该预先设置数组大小。
Int a[10]可以作为参数,int a[x]不能作为参数。
标题:10
如果变量是在复合语句中定义的,关于变量的正确说法是()
选项:
a,只在复合语句中有效。
b,只在这个函数中有效。
c、在此程序范围内均有效。
d是一个非法变量。
答案是