64,648
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#include<windows.h>
int mm[2];
void execute(int ins[], int size){
mm[0] = 1;
for(int i = 0; i< size;i++){
switch(ins[i]){
case 1 :
++mm[0];
break;
case 2:
mm[1] = mm[0];
break;
case 3:
mm[1] = mm[1] < 60000000;
break;
case 4:
if(!mm[1]){
i = 100;
}
break;
case 5:
if(mm[1]){
i = 0;
}
break;
}
}
}
void execute2(){
for(int i = 0; i < 60000000; i++){
switch( i % 5){
case 0: mm[0]++; break;
case 1: if(mm[0]){;} break;
case 2: if(!mm[0]){;} break;
case 3: mm[1] = mm[1] < 60000000;break;
case 4: mm[1] = mm[0]; break;
}
}
}
int getms(){
SYSTEMTIME time;
GetSystemTime(&time);
return time.wMinute * 60 * 1000 + time.wSecond * 1000 + time.wMilliseconds;
}
int main(int argc,char** argv){
int ins[6];
ins[0] = 2;
ins[1] = 2;
ins[2] = 3;
ins[3] = 4;
ins[4] = 1;
ins[5] = 5;
int s = getms();
execute(ins, 6);
printf("耗时%d毫秒\n",getms() - s);
s = getms();
execute2();
printf("耗时%d毫秒\n",getms() - s);
return 0;
}
#include<stdio.h>
#include<windows.h>
#include <iostream>
int mm[2];
void execute(int ins[], int size){
mm[0] = 1;
int n = 0;
for(int i = 0; i< size;i++){
++n;
switch(ins[i]){
case 1 :
++mm[0];
break;
case 2:
mm[1] = mm[0];
break;
case 3:
mm[1] = mm[1] < 60000000;
break;
case 4:
if(!mm[1]){
i = 100;
}
break;
case 5:
if(mm[1]){
i = 0;
}
break;
}
}
std::cout << "execute 循环次数:"<< n << std::endl;
}
void execute2(){
int i = 0;
for(i = 0; i < 60000000; i++){
switch( i % 5){
case 0: mm[0]++; break;
case 1: if(mm[0]){;} break;
case 2: if(!mm[0]){;} break;
case 3: mm[1] = mm[1] < 60000000;break;
case 4: mm[1] = mm[0]; break;
}
}
std::cout << "execute2 循环次数:"<< i << std::endl;
}
int getms(){
SYSTEMTIME time;
GetSystemTime(&time);
return time.wMinute * 60 * 1000 + time.wSecond * 1000 + time.wMilliseconds;
}
int main(int argc,char** argv){
int ins[6];
ins[0] = 2;
ins[1] = 2;
ins[2] = 3;
ins[3] = 4;
ins[4] = 1;
ins[5] = 5;
int s = getms();
execute(ins, 6);
printf("耗时%d毫秒\n",getms() - s);
s = getms();
execute2();
printf("耗时%d毫秒\n",getms() - s);
int nTest = 0;
std::cin >> nTest;
return 0;
}