内容发布更新时间 : 2025/5/24 2:54:10星期一 下面是文章的全部内容请认真阅读。
C.不允许直接递归调用,但允许间接递归调用 D.既允许直接递归调用,也允许间接递归调用 5.一个函数返回值的类型取决于( C )。
A.return语句中表达式的类型 B.调用函数时临时指定 C.定义函数时指定或缺省的函数类型 D.调用该函数的主调函数的类型 6.下面叙述中,错误的是( C )。
A.函数的定义不能嵌套,但函数调用可以嵌套 B.为了提高可读性,编写程序时应该适当使用注释
C.变量定义时若省去了存储类型,系统将默认其为静态型变量 D.函数中定义的局部变量的作用域在函数内部
7.在一个源程序文件中定义的全局变量的有效范围为( C )。
A.一个C程序的所有源程序文件 B.该源程序文件的全部范围 C.从定义处开始到该源程序文件结束 D.函数内全部范围
8.某函数在定义时未指明函数返回值类型,且函数中没有return语句,现若调用该函数,则正确的说法是( D )。
A.没有返回值 B.返回一个用户所希望的值 C.返回一个系统默认值 D.返回一个不确定的值
9.函数swap(int x, int y)可实现对x和y值的交换。在执行如下定义及调用语句后,a和b的值分别为( B )。
int a=10, b=20; swap (a,b );
A.10和10 B.10和20 C.20和10 D.20和20 10.下面错误的叙述是( D )。
A.在某源程序不同函数中可以使用相同名字的变量 B.函数中的形式参数是局部变量
C.在函数内定义的变量只在本函数范围内有效
D.在函数内的复合语句中定义的变量在本函数范围内有效
二、程序填空
1.求s=1!+2!+3!+…+10!之和。 程序如下:
#include
int k=1; long int p=1; for(k=1; k<=n; k++)
【1】p=p*k; ; return p; } main( ) {
int n; float sum=0;
for(n=1;n<=10;n++)
【2】sum=sum+factorial(n); ; printf(\}
2.以下函数用以求x的y次方。
double fun (double x, int y) {
int i; double m=1;
for ( i=1; i 【3】<=y或
三、阅读程序并写出运行结果
1.下面程序运行的结果是_____2,4,,6,8________: #include
int n;
for(n=1; n<=MAX_COUNT; n++) fun( ); }
void fun( ) {
static int k; k=k+2;
prin