随笔分类 -  C++

摘要:今天做搜索的acm题,有一步需要用到计算100000以内的素数,并保存在一个数组内。直接算超时,讲义中用其他约束条件将范围变为了10000才打到了时间的要求。在网上搜C++素数计算,发现了一段经典代码。实验了一下,速度非凡,在我这1G内存的老式笔记本上求出1亿以内的素数并保存到制定数组中只用了8.531s。计算10万以内的只需1ms。代码贴在下面 int count=0; bool *temp=new bool[data]; for(int i=0;i!=data;++i) temp[i]=true;//用来判断是否是素数的数组 temp[2]=true;... 阅读全文
posted @ 2011-05-18 19:29 ladd 阅读(2724) 评论(0) 推荐(0)
摘要:printf是C语言下经典的输出方式cout是C++中强力推荐的输出方式printf需要人为的设定输出格式,相比较而言cout操作更加简单,能够自动识别输出的类型。例如输出a和b的和是sum,用printf表示为:printf("%d和%d的和是%d/n",a,b,sum);而用cout可以表示为:cout<<a<<"和"<<b<<"的和是"<<sum<<endl;在效率方面printf有明显的优势,下面就二者的效率做具体的比较IDE:wxdev-C++ buil 阅读全文
posted @ 2011-05-13 12:48 ladd 阅读(787) 评论(0) 推荐(0)
摘要:exit()是退出程序,而break是退出循环或者switchEXIT_SUCCESS和EXIT_FAILURE也可以实现同样的功能程序计时可以采用clock函数来实现1.在程序开头写上 #include "time.h"2.声明两个时间变量 clock_t start,finish; 3.start=clock(); //在开始计时的地方加上这句话4.finish=clock();//停止计时5.printf("耗时%fsecond./n",(double)(finish-start)/CLOCKS_PER_SEC);//输出时间 阅读全文
posted @ 2011-05-13 11:43 ladd 阅读(154) 评论(0) 推荐(0)