c语言clock()每次测出的程序运行时间都不一样,为什么? 不应该是一个固定的数么?

intmain(){inta,b;a=1,b=10000;as=clock();for(a=1;a<=b;a++){printf("%d\n",a);}en=clock(... int main()
{
int a,b;
a=1,b=10000;
as=clock();
for(a=1; a<=b; a++)
{
printf("%d\n",a);
}
en=clock();
printf("%d++++++\n",en-as);
printf("%d++++++\n",CLK_TCK);
}
这个是代码
第一次运行
printf("%d++++++\n",en-as);这条语句输出的是4577.
第二次运行
printf("%d++++++\n",en-as);这条语句输出的是7236.
展开
 我来答
日名字全被注册
2020-05-20 · TA获得超过482个赞
知道小有建树答主
回答量:787
采纳率:68%
帮助的人:172万
展开全部
多任务操作系统下,当然是变的。。CPU一个核心同一时刻只能为一个程序执行计算。要想时钟一样,除非是脱离操作系统的单任务环境。
匿名用户
2020-05-08
展开全部
cpu调度其他任务每时每刻都不同,结果当然不同。
你把其他软件都关了,然后再测几次,会发现大多数的时间趋于稳定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式