C++ A C/C++;将输出为速度测试测验的程序
我是IT专业的一年级学生。我们的教授给了我们一个项目。该项目应该是一个简单的C/C++程序,将帮助其他人 我选择做一个项目,为孩子们测试速度。测试速度包括加法、减法、乘法和除法问题。我很担心,因为我不知道如何为计时器编写代码。因为这是一个测试速度,计时器是必须的。此外,我如何检查答案,如果他们答对了还是错了,并将打印出他们答对的项目数 我希望有人能帮我解决这个问题。 谢谢!:) 注 如果使用C++ A C/C++;将输出为速度测试测验的程序,c++,c,timer,C++,C,Timer,我是IT专业的一年级学生。我们的教授给了我们一个项目。该项目应该是一个简单的C/C++程序,将帮助其他人 我选择做一个项目,为孩子们测试速度。测试速度包括加法、减法、乘法和除法问题。我很担心,因为我不知道如何为计时器编写代码。因为这是一个测试速度,计时器是必须的。此外,我如何检查答案,如果他们答对了还是错了,并将打印出他们答对的项目数 我希望有人能帮我解决这个问题。 谢谢!:) 注 如果使用clock(),得到的时间不是(毫秒)秒,而是CPU时钟滴答作响 标题 包括 参考文献 & 例子 #包括
clock()
,得到的时间不是(毫秒)秒,而是CPU时钟滴答作响
标题
包括#包括
#包括
内部主(空)
{
双启动=时钟();
//...
//向用户提问
//...
printf(“运行时间:%f毫秒”,clock()-Start);
}
看一看
/*时钟示例:素数频率*/
#包括/*printf*/
#包括/*时钟、时钟、每秒时钟*/
#包括/*sqrt*/
素数的整数频率(整数n){
int i,j;
intfreq=n-1;
对于(i=2;i1;--j)如果(i%j==0){--freq;break;}
返回频率;
}
int main()
{
时钟;
int f;
t=时钟();
printf(“计算…\n”);
f=素数的频率(99999);
printf(“低于100000的素数为:%d\n”,f);
t=时钟()-t;
printf(“我用了%d次点击(%f秒)。\n”、t、((浮点)t)/每秒时钟数);
返回0;
}
请注意,
CLOCKS_PER__second
提供当前时钟速度,通常在现代计算机中,它会因电源设置而变化。所以你可能需要做一些更聪明的事情才能得到更准确的结果 时钟有点刺耳。从time.h开始的时间(0)可能足够了,它已经以秒为单位了。@RichardPlunkett但是clock()
是以毫秒为单位的,我还是不明白。对不起,我试着去理解它,但是我不能。你能给我一个示例代码吗?谢谢!:)@user3027129我添加了这个示例。它可以用GCC完美地编译。如果这有帮助,您可以单击将其设置为可接受答案。:-)请记住,有一个
头,因此您不必依赖非标准函数。
clock_t start = clock();
clock_t total = clock() - start;
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
double Start = clock();
//...
// Ask question to the user
//...
printf("Elapsed Time: %f milliseconds", clock()-Start);
}
/* clock example: frequency of primes */
#include <stdio.h> /* printf */
#include <time.h> /* clock_t, clock, CLOCKS_PER_SEC */
#include <math.h> /* sqrt */
int frequency_of_primes (int n) {
int i,j;
int freq=n-1;
for (i=2; i<=n; ++i) for (j=sqrt(i);j>1;--j) if (i%j==0) {--freq; break;}
return freq;
}
int main ()
{
clock_t t;
int f;
t = clock();
printf ("Calculating...\n");
f = frequency_of_primes (99999);
printf ("The number of primes lower than 100,000 is: %d\n",f);
t = clock() - t;
printf ("It took me %d clicks (%f seconds).\n",t,((float)t)/CLOCKS_PER_SEC);
return 0;
}