问题 多选题

如图所示,一质量为m的小物体以一定的速率v0滑到水平传送带上左端的A点,当传送带始终静止时,已知物体能滑过右端的B点,经过的时间为t0,则下列判断正确的是(  )

A.若传送带逆时针方向运行且保持速率不变,则物体也能滑过B点,且用时为t0

B.若传送带逆时针方向运行且保持速率不变,则物体可能先向右做匀减速运动直到速度减为零,然后向左加速,因此不能滑过B点

C.若传送带顺时针方向运行,当其运行速率(保持不变)v=v0时,物体将一直做匀速运动滑过B点,用时一定小于t0

D.若传送带顺时针方向运行,当其运行速率(保持不变)v>v0时,物体一定向右一直做匀加速运动滑过B点,用时一定小于t0

答案

A、当传送带不动时,小物块在滑动摩擦力作用下在传送带上做匀减速运动,当传送带逆时针方向运行且保持速率不变,物体滑上传送带时仍在滑动摩擦力作用下做匀减速运动,加速度不变,位移不变,运动情况完全相同,所以物体也能滑过B点,且用时为t0,故A正确,B错误;

B、传送带以恒定速率v沿顺时针方向运行,当v=v0,小物块在传送带上做匀速直线运动滑过B点,所以所用时间t<t0,故C正确;

D、传送带以恒定速率v沿顺时针方向运行,当v>v0,小物块在传送带上可能一直做匀减速运动,也有可能先做匀减速后做匀速运动,所以t1≥t2,故D错误.

故选AC

问答题
问答题

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:把指定分数范围之外的学生数据放在b所指的数组中,分数范围之外的学生人数由函数值返回。
例如,输入的分数是80和89,则应当把分数低于80和高于89的学生数据进行输出,不包含80分和89分的学生数据。主函数中把80放在low中,把89放在heigh中。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序
#include <stdio.h>
#define N 16
typedef struct
char num[10];
int s;
STREC;
int fun(STREC *a,STREC *b,int 1,int h)

main ()

STREC s[N]="GA005",55,"GA003",96,
"GA002",80,"GA004",68,"GA001",88,
"GA007",74,"GA008",85,"GA006",99,
"GA015",90,"GA013",53,"GA012",66,
"GA014",82,"GA0ll",73,"GA017",69,
"GA018",64,"GA016",86;
STEC h[N],tt;
FILE *out;
int i,j,n,low,heigh,t;
printf("Enter 2 integer number low & heigh:");
scanf("%d%d",&low,&heigh);
if(heigh<low)

t=heigh;
heigh=low;
low=t;

n=fun(s,h,low,heigh);
printf("The student ’s data out%d--%d:\n",low,heigh);
for(i=0;i<n;i++)
printf("%s%4d\n",h[i].num,h[i].s);
/*输出指定分数范围内的学生记录*/
printf("\n");
out=fopen("out23.dat","w");
fprintf(out,"%d\n",n);
n=fun(s,h,70,79);
for(i=0;i<n-1;i++)
/*分数在70~79之外的学生记录按分数从低到高排列*/
for(j=i+l;i<n;j十+)
if(h[i].s>h[j].s)

tt=h[i];
h[i]=h[j];
h[j]=tt;

for(i=0;i<n;i++)
fprintf(out,"%4d\n",h[i].s);
fprintf(out,"\n");
fclose(out);