首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0
甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0
admin
2020-06-16
42
问题
甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0秒。
例如,若t1=7,t2=5,t3=6,t4=4,n=10,则总共可听到28次鞭炮声。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include
/**********found***********/
#define OK(i,t,n)(( ___1___ %t==0)
&&(i/t
int fun(int t1,int t2,int t3,int
t4, int n)
{ int count,t,maxt=t1;
if (maxt
if (maxt
if (maxt
count=1; /*给count赋初值*/
/**********found***********/
for(t=1; t
if (OK(t,t1,n) || OK(t,t2,
n)|| OK(t, t3, n) || OK(t, t4, n))
Count++;
}
/**********found***********/
return ___3___ ;
}
main()
{ int t1=7,t2=5,t3=6,t4=4,n=10,r ;
r=fun(t1,t2,t3,t4,n);
printf(“The sound:%d\n”,r);
}
选项
答案
(1)i (2)t++ (3)count
解析
函数fun的功能是根据形参提供的值求出总共听到多少次鞭炮声,fun函数的参数是每个人放鞭炮的间隔时间和燃放次数。甲乙丙丁四人同时开始放鞭炮,由于间隔不同在某些时刻几个人会同时燃放,这种情况只算一次响声,因此需要考虑同时燃放的次数。
[解题思路]
第一空:由“if(OK(t1,n)||OK(t,t2,n)||OK(t,t3,n)||OK(t,t4,n))count++;”可知count计数听到的鞭炮声,在满足if条件时,计数加1。t时刻,至少有一个人放了一个鞭炮才能听得到声音,故t%t1==0、t%t2==0、t%t3==0、t%t4==0这四个当中至少一个成立,四者是或的关系。第一个标识下是宏OK的定义,由前面的分析可知,OK宏的作用就是判断t%i(i等于1、2、3和4)是否等于0且i/t
第二空:时间t从第一秒开始,到最大时刻结束,时间是一秒一秒增加,在每个时刻判断是否能够听到声音,故第二空是“t++”。
第三空:变量count记录了听到的声音次数,因此count是函数的返回值,故第三空应为“count”。
转载请注明原文地址:https://kaotiyun.com/show/MOCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
请编写一个函数fun,它的功能是:将SS所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。例如,若输入“abc4Efg”,则应输出”aBc4EFg”。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数
请编写函数fun,其功能是:找出2×M整型二维数组中最大元素的值,并将此值返回调用函数。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include#defineM4
有以下程序段:struct{floatweight;charsex;charname[10];}rec,*ptr;ptr=&rec;从键盘读入字符串给结构体变量Fee的name成员,错误的输入语句是()。
给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置0)。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为eh的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
有以下程序:#includemain(){inti,j,x=0;for(i=0;i
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCⅡ码降序排列。例如,原来的字符串为“CEAedca”,排序后输出为“CedcEAa”。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填
有以下程序:#includevoidmain(){unsignedchara=8,c;c=a>>3;printf(“%d\n”,c);}程序运行后的输出结果是()。
随机试题
油层分布状况、油层性质基本相同,并在一套相似的沉积环境下形成的油层组合是()。
有关输血,不正确的是
制备注射剂时加入的等渗调节剂有()
护士小刘正在为做胰十二指肠切除术的患者准备麻醉床。小刘为患者准备麻醉护理盘中的用物,不需要的是
下列关于固定资产后续支出的表述中,正确的有()。
根据《票据法》的规定,下列关于各种票据行为的表述,不正确的是()
试根据新古典增长模型的基本方程式△k=sy一(n+δ)k,分析讨论下列问题:为什么说,储蓄率的增长能够提高人均产出水平,但不能够保持长久的高增长率?
让一个吸烟上瘾的人扮演因吸烟患肺癌而接受治疗的病人,之后他戒了烟。这一情境中对戒烟起作用的主要因素是
下列叙述中正确的是
Jack:_________Lora:I’manengineer.Jack:Oh,areyou?Lora:Howaboutyou?Jack:Iworkforatradingcompany.
最新回复
(
0
)