重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 求职面试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

在一个函数中定义的静态局部变量可以被另一个函数调用。

查看答案
更多“在一个函数中定义的静态局部变量可以被另一个函数调用。”相关的问题

第1题

在一个函数内定义的静态局部变量不能被另外一个函数所调用
点击查看答案

第2题

以下对静态局部变量的叙述,不正确的是()。

A、在一个函数中定义的静态局部变量可以被另一函数调用

B、数值型静态局部变量的初值默认为0

C、静态局部变量是在编译时赋初值的,故它只被赋值一次

D、静态局部变量在整个程序运行期间都不释放

点击查看答案

第3题

若函数中局部变量的值经函数调用后仍然保留,则该局部变量定义为( )。

A、自动变量

B、内部变量

C、外部变量

D、静态变量

点击查看答案

第4题

请教:2012年3月全国计算机等级《二级C语言》考前预测试卷(1)第1大题第19小题如何解答?
【题目描述】

以下叙述错误的是(  )。

A)变量的作用域取决于变量定义语句的位置

B)全局变量可以在函数以外的任何部位进行定义

C)局部变量的作用域可用于其他函数的调用

D)一个变量说明为static存储类型是为了限制其他编译单元的引用

【我提交的答案】: C
【参考答案与解析】:

正确答案:D

答案分析:

本题考查函数调用的变量作用域。全局变量不在任何函数俸内定义,作用域为整个文件i局部变量在函数体内定义,作用域仅为本次函数;static类型是静态变量,为了方便其他编译单元的引用,不能随意改变。一个函数包含两部分:函数首和函数体,函数体包括花括号内的所有语句。

c为什么是正确的

点击查看答案

第5题

如果希望变量在函数调用结束后仍然保留其值,则可以将变量定义为局部静态变量,定义方式为在类型说明符前加上_______关键字。
点击查看答案

第6题

函数

  1.实验目的

  ①掌握定义函数的方法。

  ②掌握函数实参与形参的对应关系以及“值传递”的方式。

  ③掌握甬数的嵌套调用和递归调用的方法。

  ④掌握全局变量和局部变量、动态变量和静态变量的概念和使用方法。

  ⑤学习对多文件程序的编译和运行。

  2.实验内容

  编程序并上机调试运行。

  ①已有变量定义和函数调用语句int a=1,b=-5,c; c=fun(a,b);fun函数的作用是计算两个数之差的绝对值,并将差值返回调用函数,请编写fun函数。

  Fun(int x,int y)

  {      }

  ②有函数调用语句c=add(a,b);请编写add函数,计算两个实数a和b的和,并返回和值。

  double add(double x,double y)

  {        }

  ③利用递归方法求5!。

  ④利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

  ⑤有5个人坐在一起,问第五个人的岁数,他说比第四个人大2岁。问第四个人岁数,他说比第三个人大2岁。问第三个人,叉说比第二个人大两岁。问第二个人,又说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

  程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人的岁数,就需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。

  ⑥以下程序运行后输入:3,abcde<回车>,则输出结果是______。

  #include

  move(char*str,int n)

  {char temp;int i;

  temp=sTR[n-1];

  fOr(i=n-1;i>0;i--)str[i]=str[i-1];

  str[0]=temp;

  }

  main()

  {chaR s[50];int n,i,z;

  scanf("%d,%s",&n,&s);

  z=strlen(s);

  for(i=1;i<=n;j++)

  move(s,z);

  printf("%s\n",s);

  }

  ⑦编写函数求:1-1/2+1/3-1/4+1/5-1/6+1/7-…1/n

  ⑧编程输出如下图形,

    即一个由*组成的正六边形,注意是空心的。

  3.理解变量的作用范围

  ①学习static定义静态变量的用法。

  #include"stdio.h"

  varfunc()

  {

  int var=0;

  static int static_var=0;

  printf("\40:var equal%d\n",var);

  printf("\40:static var equal%d\n",static_var);

  printf("\n");

  var++;

  static_var++;

  }

  voidmain()

  {inti;

   for(j=0;i<3;i++)

    varfunc();

  }

  ②学习使用auto定义变量的用法。

  #include"stdio.h"

  main()

  {inti,num;

  num=2;

   for(i=0;i<3;i++)

  { printf("\40:The num equal%d\n",num);

   num++;

    {

    auto int num=1;

    printf("\40:The internal block num equal%d\n",num);

    num++;

    }

   }

  }

  ③学习使用static的另一用法。

  #include"stdio.h"

  main()

  {

  inti,num;

  num=2

  for(i=0;i<3;i++)

  {

  printf("\40:The hum equal%d\n",num);

  num++;

  {

  static int num=1;

  printf("\40:The internal block hum equal%d\n",hum);

  num++;

  }

  }

  }

  ④学习使用external的用法。

  #include"stdio.h"

  int a,b,c;

  void add()

  {int a;

  a=3;

  c=a+b

  }

  voidmain()

  { a=b=4;

  add();

  printf("The value of c is equal to%d\n",c);

  }

  ⑤学习使用register定义变量的方法。

  voidmain()

  {

  register int i;

  int tmp=0:

  for(i=1;i<=100;i++)

  tmp+=i;

  printf("The sum is%dha",tmp);

  }

  (6)宏#define命令练习(1)

  #include"stdio.h"

  #defineTRUE 1

  #define FALSE 0

  #define SQ(x)(x)*(x)

  voidmain()

  {

  int num;

  int again=1;

  printf("\40:Program will stop if input value less than 50.\n");

  while(again)

  {

  printf("\40:Please input number==>");

  scanf("%d",&num);

  printf("\40:The square for this number is%d\n",SQ(num));

  if(num>=50)

   again=TRUE;

  else

   again=FALSE;

  }

  }

点击查看答案

第7题

下列说法正确的是

A、递归算法的执行过程可分为递推和回归两个阶段。在递推阶段,必须要有终止递归的情况。当满足递归终止条件时,即获得最简单情况的解以后,开始进入回归阶段,即递归返回阶段。

B、基本条件是一个能控制递归过程结束的条件,是递归的出口,它本身不再使用递归的方式来定义。一般条件定义了递归关系,控制递归调用向着基本条件的方向转化。

C、数学归纳法是递归的数学基础。

D、形参也是局部变量,形参变量和实参变量的作用域是不同的,因此形参变量和实参变量同名时,二者互不干扰。

E、全局变量破坏了函数的封装性,不能实现信息隐藏,依赖全局变量的函数很难在其他程序中复用,对于使用全局变量的程序维护也比较困难,因此建议尽量不用全局变量。

F、函数既可以嵌套定义,也可以嵌套调用。

G、局部变量与全局变量同名时,全局变量隐藏局部变量,即全局变量起作用,局部变量不起作用。

H、用extern声明变量为外部变量的时候,编译器是对其分配内存的。

I、静态局部变量和静态全局变量的生存期和作用域都是相同的。

点击查看答案

第8题

下列说法正确的是

A、形参也是局部变量,形参变量和实参变量的作用域是不同的,因此形参变量和实参变量同名时,二者互不干扰。

B、全局变量破坏了函数的封装性,不能实现信息隐藏,依赖全局变量的函数很难在其他程序中复用,对于使用全局变量的程序维护也比较困难,因此建议尽量不用全局变量。

C、函数既可以嵌套定义,也可以嵌套调用。

D、局部变量与全局变量同名时,全局变量隐藏局部变量,即全局变量起作用,局部变量不起作用。

E、用extern声明变量为外部变量的时候,编译器是对其分配内存的。

F、静态局部变量和静态全局变量的生存期和作用域都是相同的。

点击查看答案

第9题

在一个函数中定义的自动局部变量,在其它函数中不可以访问,在一个函数中定义的静态局部变量,在其它函数中可以访问。
点击查看答案

第10题

在一个函数中定义的变量在另一个函数中不能使用。()

此题为判断题(对,错)。

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案