首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: int a=4; int f(int n) main() {int t=0;static int a=5; {int s=a,i=0; if(n%2){int a=6;t+=a++;} for(;i<2;i++)s+=f(i); els
有下列程序: int a=4; int f(int n) main() {int t=0;static int a=5; {int s=a,i=0; if(n%2){int a=6;t+=a++;} for(;i<2;i++)s+=f(i); els
admin
2016-12-18
27
问题
有下列程序:
int a=4;
int f(int n) main()
{int t=0;static int a=5; {int s=a,i=0;
if(n%2){int a=6;t+=a++;} for(;i<2;i++)s+=f(i);
else{int a=7;t+=a++;} printf("%d\n",s);
return t+a++;} }
程序运行后的输出结果是
选项
A、28
B、24
C、32
D、36
答案
A
解析
程序中定义了全局整型变量a=4。在int f(int n)函数中定义了局部静态整型变量并进行了初始化即static nt a=5。在int f(int n)函数中对n是否是偶数进行判断,如果n是奇数,则函数的返回值为11,局部静态整型变量a=6:如果n是偶数,则函数的返回值为12,局部静态整型变量a=6。所以在main()函数中循环首先执行s+=f(0)语句,而f(0)返回值12,所以第一次循环结束s的值等于4+12=16;第二次开始执行f(1)时,在f(1)中执行“if(n%2){int a=6;t+=a++;}”和“return t+a++;”这两条语句,这时t=6,a=6(静态局部变量第一次循环后其值加1值不释放,执行第二次循环量,其值仍有效),所以f(1)的返回值等于12。再在主函数中执行s+=f(1)语句,即16+12=28。
转载请注明原文地址:https://jikaoti.com/ti/2Ei0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
诊断和改正程序中错误的工作通常称为【】。
下列程序的功能是将字符串s中所有的字符c删除。请填空。#include<stdio.h>main(){chars[80];inti,j;gets(s);for(i=j=0;s[i]!=’\0’;i+
设在C语言中,float类型数据占4个字节,则double类型数据占()个字节。
结构化分析方法是面向()的自顶向下逐步求精进行需求分析的方法。
按照“先进先出”组织数据的数据结构是()。
一棵二叉树有10个度为l的结点,7个度为2的结点,则该二叉树共有_______个结点。
若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是
下面的程序实现的是从指针p所指向的地址的n个数中,找出最大的和最小的数据,请填空。fun(int*p,intn){int*q;intmax,min;max=min=*p;for(q=p;______;q++)if(*q>max
关于结构化程序设计原则和方法描述错误的是()。
以下不是面向对象思想中的主要特征的是
随机试题
简述经济基础与上层建筑作用与反作用的主要表现。
肺栓塞溶栓治疗的禁忌证为
黄芪与茯苓配伍,茯苓能增强黄芪的补气利水作用,这种配伍关系是
王某,50岁,农民,烈日下在田间劳动,2小时后出现头晕、恶心、面色苍白,大汗,心动过速,呼吸浅快,意识不清,血压75/50mmHg,应考虑是
男,28岁。寒战、高热、咳脓痰2天。查体:体温39.3℃,左肺闻及湿啰音。X线胸片示:左肺下叶大片状致密影。给予抗生素治疗,2天后症状加重,胸痛并呼吸困难,左胸呼吸音降低,胸片示左胸腔积液。进一步诊断最有价值的方法是
()是组织设计的最基本原则。[2014年5月、2013年5月二级真题]
的值是()。
当一年级的教师遇到自己班上平均年龄是6岁的孩子时,他事实上面临的是一群能力不同的儿童。从他们准备状态的差异来说,实际上是5岁到1J岁。造成这种现象的原因是()。
Onedayamanwentintoachemist’sshop(药店)andsaid,"Haveyougotanythingforheadache(头痛)?"Thechemisttookoutabo
【S1】【S9】
最新回复
(
0
)