PTA第八章错题

1-10
The data type for return value of a function is the type of function determined when the function is defined.

T

1-19
为了便于计算机存储管理,C语言把保存所有变量的数据区,分成动态存储区和静态存储区,静态局部变量被存放在动态存储区。F

2-6
以下关于函数叙述中,错误的是(C )。(1分)
A.函数未被调用时,系统将不为形参分配内存单元
B.实参与形参的个数必须相等,且实参与形参的类型必须对应一致
C.当形参是变量时,实参可以是变量、常量或表达式
D.如函数调用时,实参与形参都为变量,则这两个变量不可能占用同一内存空间

2-9
According to the following definition of function fun ,

void fun(int n, double x) { …… } which one is the** correct** calling of the function fun ?
(1分)
//A.fun(int y,double m);
B.k=fun(10,12.5);
C.fun(x, n);
D.void fun(n,x);
选C

2-13
下面说法中正确的是(C)。(1分)
A.若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度
B.若全局变量仅由单个函数访问,则可以将这个变量改为该函数的静态局部变量,以降低模块间的耦合度
//C.设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑变量生命周期问题
D.静态全局变量使用过多,可那会导致动态存储区(堆栈)溢出

A.B.C都正确,这题应该是选错误选项,如果选错误选项应该选D。

A选项:变量分为全局变量和局部变量。局部变量和形参的作用域是函数内部,全局变量的作用域是整个文件。但可以通过声明一个extern的全局变量拓展全局变量的作用域,也可以通过定义一个static的全局变量限制这种拓展。
B选项:如果全局变量仅仅由单个函数访问,不存在耦合度的问题
C选项:动态全局变量、静态全局变量、静态局部变量的生命周期都为程序运行期间,其中静态局部变量的生存周期虽然为整个源程序,但是其作用域仍然与局部变量相同,当退出函数是,该变量还存在,但是不能使用。
D选项:全局变量和静态变量都是存储在静态存储区,所以在递归调用是不会压栈,也不会造成堆栈溢出。

若全局变量仅在单个C 文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度
若全局变量仅由单个函数访问,不存在耦合度的问题
动态全局变量,静态全局变量,静态局部变量的生命周期都是整个程序运行期间,跟函数设计没有关系
静态全局变量存储于全局(静态)数据区  

2-15
对于定义char str[] = “abc\0def”; (注:其中0为数字零),求字符串str的长度len(即调用标准库函数strlen:len = strlen(str))和数组str的大小size(即size = sizeof(str)),len和size分别是:C
(2分)
A.7,8
B.7,7
C.3,8
D.3,7

实现代码如下:

#include <stdio.h>
#include <stdlib.h>
#include<string.h>

int main()
{
	char str[] = "abc\0def";
	int len,size;
	len = strlen(str);
	size = sizeof(str);
	printf("%d %d",len,size);
	
	return 0;
	
}
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

懒回顾,半缘君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值