30/09/2018, 18:13
Đếm thời gian chạy chương trình trong c++: chỉ hiện 0.00
mấy cái đếm thời gian này thú thật e cũng ko rành lắm. hiện tại e đang học CTDL nên thầy bảo về tự tìm hiểu mà sao e chạy nó cứ 0.00 là sao mấy bác. có phải do em tự nhập phần tử n ít quá nên nó ko đếm dc ko có ai chỉ e vs.
#include "stdafx.h"
#include <iostream>
#include <time.h>
using namespace std;
#define MAX 100
//nhập mảng
void nhapmang(int a[], int n)
{
for (int i = 0; i < n; i++)
{
cout << "nhap phan tu thu a[" << i << "] :";
cin >> a[i];
}
}
//in mảng
void inmang(int a[], int n)
{
for (int i = 0; i < n; i++)
{
cout << a[i] << " ";
}
cout << endl;
}
// InterChange_Sort
void InterChange_Sort(int a[], int n)
{
int temp;
for (int i = 0; i < n-1; i++)
{
for (int j = i + 1; j < n; j++)
{
if (a[i]>a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int a[MAX], n,c,b;
cout << "nhap phan tu n=";
cin >> n;
nhapmang(a, n);
inmang(a, n);
cout << "mang sau khi sap xep la:";
clock_t start = clock();// ham bất đầu đếm thời gian thực hiện chương trình
InterChange_Sort(a, n);
inmang(a, n);
clock_t finish = clock();// ham đếm thời gian kết thúc
double duration = (double)(finish - start) / CLOCKS_PER_SEC;
cout <<"
";
printf("Thoi gian thuc thi: %.2lf", duration);
system("pause");
return 0;
}
Bài liên quan





Chương trình chạy quá nhanh chứ ko phải ko đếm đc.
n= 1k mà mất có 0.002~0.004s à
Thì lúc bạn in ra chỉ có 2 số ở phần thực thôi, nên nó in ra 0.00
ncó nhiều số một tí%.2lfbạn nên sửa thành%.6lfhoặc lớn hơn để tăng độ chính xác cho kết quả hiện trên màn hình, mà thêm thông tin nữa là thời gian thực thi đấy được tính theomiliseconds, bạn nên thêm chữmilisecondsvào đấy nhé