关于C语言,下列说法中正确的有()。

   更新日期:2024.05.23

C语言中有明确规定,宏定义是利用#define命令,用一个指定的标识代替一个字符串。对应到题目上就是#define 标识符 字符串,所以PI是标识符,3.1415926是字符串。所以这题选B

关于C选项,如果3.1415926不在宏函数定义中,那么它就是一个常量,只是因为它在#define命令中,所以它是一个字符串。

A选项,单精度数是指计算机表达实数近似值的一种方式,而不是只明确的值,故错。

D选项,双精度数也是值计算机表达实数近似值的一种方式,而不是只明确的值,故错。但是和单精度数有一点区别。具体体现在数字的范围上。

扩展资料

宏是一种预处理指令,它提供了一种机制,可以用来替换源代码中的字符串。

1、条件编译:

C语言中,预处理过程读入源代码,检查包含预处理指令的语句和宏定义,并对源代码进行相应的转换,预处理过程还会删除程序中的注释和多余的空白符号。

预处理指令是以#开头的代码行,#必须是该行除了空白字符外的第一个字符。#后是指令关键字,在#和指令关键字之间允许存在若干空白字符。

2、宏函数:

函数的调用是需要一定的时间和空间代价的。因为系统在调用函数时,需要保留"现场",即将程序要执行的指令的下一条指令的位置压入栈,然后转入调用函数去执行,调用完函数后再返回主调函数,恢复"现场",返回到栈里保存的的下一条指令的位置继续执行。

所以函数的调用需要额外的时间和空间代价。

而宏函数则不存在上述问题,宏函数在预编译时,同函数定义的代码来替换函数名,将函数代码段嵌入到当前程序,不会产生函数调用。



  • 13734965512 :在C语言程序中,下列叙述正确的是( )
    云连兴4407 :答:B.函数的定义不可以嵌套. c 语言主要由一个一个函数组成,不可以嵌套。函数的调用可以嵌套。就是常说的递归调用。
  • 13734965512 :以下关于C语言数据类型的叙述中正确的是( )。
    云连兴4407 :答:【答案】C 【答案解析由易考吧专业提供】C基本数据类型包括:分为整型、实型、枚举型、字符型四种,实型就是浮点型,实型数据只有十进制,没有2,8,16进制表达,在C语言中没有定义逻辑类型,而是一般用0代表假,用非零代表真。
  • 13734965512 :4.下列关于 C 语言程序说法正确的是( ) A.C 语言程序总是从有定义的函 ...
    云连兴4407 :答:a的说法误区:一个程序不可能只有顺序结构 b的误区:被调函数根据你的需要也就是需要它的作用域而定义,但如果被调函数在主调函数之后定义的话,那么需要在主调函数中声明,main也是函数,把它当然一般函数来理解就是 c的误区:在main函数之前你想写什么就写什么,和main没有半毛钱关系,main的作用是告诉...
  • 13734965512 :c语言选择题??
    云连兴4407 :答:1.下列说法正确的是(D)。A.main函数必须放在C程序的开头 B.main函数必须放在C程序的最后 C.main函数可以放在C程序的中间部分,但在执行C程序时是从程 序开头执行的 D.main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的 2.C语言规定标识符由(A)等字符组成。A.字母 ...
  • 13734965512 :以下关于C语言的说法正确的是?
    云连兴4407 :答:C可以没有子程序)[15]B(include、scanf、type不是C关键字,注意关键字含义,见百度百科“C语言关键字”)[16]C[17]A[18]A(严格来说没有正确答案。int可能是2字节,也可能是4字节,这和具体环境有关,即int和long的关系应该是int<=long)[19]C(把(a=2,b=5,b++,a+b)看做一个表达式,...
  • 13734965512 :c语言问题 以下说法中正确的是()
    云连兴4407 :答:1 A 形参与实参是传值的关系,各占不同的存储单元。2 D 复合语句中定义的变量只在本复合语句中有效。
  • 13734965512 :136、以下对C语言函数的有关描述中,正确的是
    云连兴4407 :答:正确答案是A.B选项。不能嵌套定义。C选项,函数可以没有返回值。D选项,没有必要放在同一个c文件中,用其他c文件的函数可以给其定义的地方函数名前面加extern修饰。
  • 13734965512 :以下关于C语言的叙述中正确的是
    云连兴4407 :答:float m=4.5,k;int n=1;k=m/n;(k为单精度,只要运算中有单精度就成立)如果是这样就是错的 float k;int i=3;k=i/2(因为运算式整个为int类型,赋值给k后数据遗失结果为1.000000)如果把k改为k=i/2.0就正确了结果为1.5000000;4错:这个是c语言语法规定的 ...
  • 13734965512 :下列关于C语言的预处理说法正确的有
    云连兴4407 :答:答案是:C A 不对。C语言的预处理功能包括:1.宏定义 2.文件包含 还有3.条件编译 等 B 不对。宏定义和文件包含指令只要在函数代码使用宏或调用包含文件中的变量、函数之前写好,一般在文件首部;但条件编译指令通常在代码中间;其它指令也不需在首部。C 正确。D 不对。C语言的编译预处理内容不...
  • 13734965512 :1、 对C语言程序,下列说法正确的是_ A 在c程序中无论是整数还是实数,只 ...
    云连兴4407 :答:答案是 3 P[0]+2指向M数组的第0行三列 求采纳!
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网