以下关于C语言的描述,哪些是正确的?

如题所述

下列叙述中错误的是(a)
a. 在程序执行过程中,当数组元素下标超出定义的下标范围时,系统将给出“下标”越界的错误提示
b. 可以通过赋初值的方式确定数组元素个数
c. 数组名代表数组所占存储区的首地址,其值不可变
d. 对于double 类型数组,不可直接用数组名对数组进行整体输入或输出
下列说法中正确的是(D)
A. 定义函数时,形参的类型说明可以放在函数体内
B. 如果形参与实参的类型不一致,则以实参类型为准
C. return 后面的值不能为表达式
D. 如果函数值类型与return 后的返回值类型不一致,则以函数值类型为准
给定下列程序,则运行结果为(B)
#include <stdio.h>
void fun(int x, int y, int * z)
{ * z = x – y;
}

void main()
{ int a, b, c;
fun(11, 5, &a);
fun(8, a, &b);
fun(a, b, &c);
printf(“%d, %d, %d\n”, a, b, c);
}

A. 6,4,2
B. 6, 2, 4
C. 2, 6, 4
D. 2,4,6
C 语句int *func(); 中,func 表示的是(A)
A. 返回值为指针的函数名称
B. 指向函数的指针
C. 指向整型变量的指针
D. 指向数组的指针
C语言规定,若未对函数返回类型加以说明,则函数的隐含类型为(B)

A. char
B. int
C. void
D. double
已有定义char a[] = "xyz", b[]={ 'x', 'y', 'z' } 以下叙述正确的是 c
a. 数组a 的存储空间长度小于数组b 的存储空间长度
b. 数组a 和b 的存储空间长度相同
c. 数组a 的存储空间长度大于数组b 的存储空间长度
d. 上述说法均不正确
下列说法中不正确的是(A)

A. 函数的类型可以是整型、实型、字符型,但不能是指针类型
B. 在没有声明函数返回值类型的情况下,默认函数返回值类型为int 型
C. C 语言规定,不能在一个函数的内部再定义函数
D. 函数可以没有形参,但函数名后的括号不能省略

两个指针变量不能(A)
A. 相加
B. 指向同一地址
C. 比较
D. 相减
若已定义的函数有返回值,则以下关于该函数调用的叙述错误的是(A)

A. 函数调用可以作为左值而被赋值
B. 函数调用可以作为独立语句存在
C. 函数调用可以作为一个函数的实参
D. 函数调用可以出现在表达式中
下列程序的输出结果是(C)
#include
void main()
{ char a[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', '\0' };
int i, j;
i = sizeof(a);
j = strlen(a);
printf("%d, %d\n", i, j);
}

A. 9,9
B. 8,9
C. 9,8
D. 1,8
阅读下列程序段,其执行结果为(C)
#include
void main()
{ int a = 4, b = 6, c = 7;
double d;
double fun(int, int, int);
printf("d = %lf\n", fun(a, b, c));
}

double fun(int a, int b, int c)
{ return a % b * c;
}

A. 27
B. 27.000000
C. 28.000000
D. 28
以下不能正确定义二维数组的选项是(A)

A. int a[2][] = {{1, 2}, {3, 4}};
B. int a[2][2] = {{1}, 2, 3};
C. int a[2][2] = {{1}, {2}};
D. int a[][2] = {1, 2, 3, 4};
在C语言中,对变量的访问方式是(C)

A. 直接、间接均不能
B. 不能直接访问,能间接访问
C. 能直接访问,也能间接访问
D. 能直接访问,不能间接访问
C语句: int (* pa)[5]; 中,pa 表示的是一个(A)

A. 指向包含5个整型元素的一维数组的指针
B. 指针数组的名称
C. 指向函数的指针
D. 指向整型变量的指针

下列说法中错误的是(D)
A. 函数中的形参是局部变量
B. 在一个函数内定义的变量只在本函数范围内有效
C. 在不同的函数中可以使用相同名字的变量
D. 在一个函数的复合语句中定义的变量只在本函数范围内有效
温馨提示:答案为网友推荐,仅供参考
相似回答