首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0
甲乙丙丁四人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参提供的值,求出总共听到多少次鞭炮声作为函数值返回。注意,当几个鞭炮同时炸响,只算一次响声,第一次响声是在第0
admin
2020-06-16
55
问题
甲乙丙丁四人同时开始放鞭炮,甲每隔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://www.kaotiyun.com/show/MOCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按num成员进行升序排列。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!试题程序:#includetypede
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。请在程序的下画线处填入正确的内容
有以下程序段:struct{floatweight;charsex;charname[10];}rec,*ptr;ptr=&rec;从键盘读入字符串给结构体变量Fee的name成员,错误的输入语句是()。
有以下程序:#includemain(){intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=0;i
对于函数声明:voidfun(floatarray[],int*ptr);以下叙述中正确的是()。
有以下程序:#includemain(){inti,j,x=0;for(i=0;i
若有以下程序:#includemain(){intc;c=13115;printf(“%d\n”,c);}则程序的输出结果是()。
有以下程序:#include<stdio.h>main(){inti,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++)printf("%d",t[2-i][i]);}程序的运行结果是()。
随机试题
LaughterThenatureoflaughterlaughterisa【L31】________process—involvesmovementandsounditiscontrolledbyour【
下图所示两根梁C截面的弯矩影响线相同。()
A.HPLC法B.硼酸亲和柱层析法C.电泳法D.阳离子交换柱层析法E.免疫浊度法测定糖化血红蛋白时可用于自动生化分析仪的方法是
我国航空意外险每份保单的保险金额为()万元,投保人最多可以买()份。
下列关于增值税专用发票填开时间的规定,正确的有()。
你是后勤保障部食堂管理人员,单位有个同事反映食堂饭菜不新鲜、鱼肉变质,其他同事也纷纷在微信群反映同样的问题。此时,你会怎么做?
"Cool"isawordwithmanymeanings.Itstraditionalmeaningisusedto【C1】______atemperaturethatisfairlycool.Astheworld
Whatisbeingadvertised?
SalesWhenastoresells【T1】______atacostlowerthanusual,itiscalledasale.Saleslastfor【T2】______.Thenthecosti
A、Thewomanwillreservearestaurantforthedinner.B、MaryKingwilldecidewheretheyhavetheirdinner.C、Themanwilldecid
最新回复
(
0
)