我有一個C程序,它將素數打印到.txt文件中。 我希望程序以幾分鐘的時間向我詢問執行時間。試着用這段代碼解決。如何控制執行時間C
#include <stdio.h>
#include <time.h>
int main()
{
execute();
return(0);
}
int execute(int minute)
{
time_t now;
time(&now);
struct tm *tmp = localtime(&now);
printf("How long you want to execute the program by minute? ");
scanf("%d",&minute);
printf("%d %02d %02d\n",tmp->tm_hour, tmp->tm_min+minute, tmp->tm_sec);
return(minute);
}
這裏也是我想運行的代碼。
#include <stdio.h>
int isprime(int x);
int main(void)
{
int AX_REGISTER, BX_REGISTER;
FILE *number, *primes;
int forever = 1;
while (forever)
{
if ((number = fopen("lastnumber.txt", "r")) == NULL)
{
fprintf(stderr, "Cannot read LASTNUMBER.txt file.\n");
return 1;
}
fscanf(number,"%d",&AX_REGISTER);
fclose(number);
BX_REGISTER=AX_REGISTER;
AX_REGISTER=AX_REGISTER+1;
if ((number = fopen("lastnumber.txt", "w")) == NULL)
{
fprintf(stderr, "Cannot write LASTNUMBER.txt file.\n");
return 1;
}
fprintf(number,"%d\n",AX_REGISTER);
fclose(number);
if (isprime(BX_REGISTER))
{
if ((primes = fopen("primes.txt", "a")) == NULL)
{
fprintf(stderr, "Cannot open PRIMES.txt file.\n");
return 1;
}
fprintf(primes,"%d\n",BX_REGISTER);
fclose(primes);
}
}
return 0;
}
int isprime(int x)
{
int i;
for (i=2;i<x;i++)
{
if (x%i==0)
return 0;
}
return 1;
}
因爲我是C編程語言的新手,我不能自己解決它。有人能幫我嗎?
如果這是基準測試,那麼通常運行到其他指定的限制,然後看看它花了多長時間,而不是你想要做什麼更好。 – 2010-12-10 01:24:10