2012年10月11日
摘要: 其中while(n):n是bool型变量时,就是代表n为true时运行循环,n是int型时,就是代表不为0时运行循环n为表达式,就代表表达式成立时运行循环下面是一个测试例子:#include<iostream>using namespace std;int main(){int n;scanf("%d",&n);while(n){cout<<n<<endl;n--;} return 0;}while(n--)的原型是while(n&&n=n-1)所以它的使用及可参照while(n)只是加了一个条件!测试例子:#in 阅读全文
posted @ 2012-10-11 19:19 @ 小浩 阅读(7109) 评论(0) 推荐(0) 编辑
摘要: 此题的翻译如下:背景:新的学期即将到来,也正逢杭州电子科技大学50周年校庆。无论你的专业是什么,我唯一要告诉那么的是:“珍惜大学的生活,利用好时间。” 很多人认为大学的生活回是丰富多采。但事实是,大学生活也同样忙碌。如果你要掌握书上的知识,你的空闲时间必须花在自学和实践上,尤其是实践。我认为,作为一位大学生,所有人都必须端正自己的学习态度。“没有不劳而获的事情”,杭电也设立了奖学金,你能得到吗?它主要依据是学生获得的GPA(测评平均分)。现在,我将告诉你它的规则,你的任务就是编程计算GPA。假如有K门课程,第i门课的学分为Ci,你的成绩为为Si,则GPA为:GPA = (C1 * S1 + C 阅读全文
posted @ 2012-10-11 19:07 @ 小浩 阅读(418) 评论(0) 推荐(0) 编辑
  2012年10月10日
摘要: 杭电2060的翻译如下:当菲利普要放松一下自己的时候,他喜欢去玩QQ里的斯诺克游戏,虽然他还只是个小菜鸟。也许你还不知道这个游戏的规则,没关系,我会先为你介绍。一共有21个球在台面上,其中包括15个红球和6个彩球:黄、绿、褐、蓝、粉、黑。选手需要用一个白球来使这些球滚进洞里,那些球所代表的值的和就是他的得分。选手必须先把一个红球打进洞里,然后它得到红球相应的分值(1分),然后他就有一次机会去选择打一个彩球。在红球还未全部打进洞里之前,打进去的彩球需要重新拿出来。换句话说,也就是最后桌上将会只留下彩球。选手按下面的顺序来击球:黄(2分)、绿(3分)、褐(4分)、蓝(5分)、粉(6分)、黑(7分) 阅读全文
posted @ 2012-10-10 19:42 @ 小浩 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 如果是32位机器的话,在内存里面的存储形式就是这样的!其中0x表示16进制,f在16进制中就表示十进制数15,这样0xffffff就表示一个16进制的数fffffff,例如: 0xf就表示16进制的f,也就是10进制的15. 0xff就表示16进制的ff,也就是10进制的(15*16+15)。此外,0xffffff和0x00ffffff 也是一样的! 测试实例: #include<iostream> using namespace std; int main() { double min; min=0xf; cout<<min<<endl;return 0; 阅读全文
posted @ 2012-10-10 19:42 @ 小浩 阅读(11929) 评论(0) 推荐(0) 编辑
  2012年10月9日
摘要: 此题是我转载的,开始我也不太懂怎么弄,后来才理解!!如果你现在也是不太懂,让我们一起ac它吧!这道题的思路大致如下:假设乌龟修了n个充电站,那么如果把起点和终点也算一个充电站的话一共有n+2个充电站,这样第一个充电站充电的时间是0,接着进行两个循环,其中for(i=1;i<n+2;i++)是从第一个充电站开始循环,对于每个i,对于循环for (j=0;j<i;j++)依次算出i其前面的每个充电站是否充电的时间!最后把最短的时间付给min即可求出乌龟的最佳方案!!#include<iostream>using namespace std;int main(){ int i 阅读全文
posted @ 2012-10-09 20:03 @ 小浩 阅读(506) 评论(0) 推荐(0) 编辑
  2012年10月2日
摘要: 这是我的穷举源码,可惜超时了!哎!!!#include<iostream> using namespace std; int main() {int n,m,i,j,a;while(scanf("%d%d", &n, &m), m+n){ for(i=1;i<=n;i++) { a=0; for(j=i;j<=n;j++) {a=a+j; if(a==m) cout<<"["<<i<<","<<j<<"]"<& 阅读全文
posted @ 2012-10-02 15:57 @ 小浩 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 此题是一道简单的c语言应用题,注意以下几点即可轻松AC呵呵!@1@ 16进制的输入和输出要用scanf("%I64X%I64X",&n,&m)和printf("%I64X\n",n+m)!@2@ 注意输出的时候%I64X只能输出正的,所以在输出的时候要在前面先进行判断正负!!@3@ 祝你好运!good luck!!!#include<iostream>using namespace std; int main(){ __int64 n,m,a; while(scanf("%I64X%I64X",&n 阅读全文
posted @ 2012-10-02 13:01 @ 小浩 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 此题是一道求两个矩形公共面积的题,此题注意所给的两个矩形是平行于x轴或者平行于y轴的,这样他们的公共部分就只能是矩形了,这样使问题简单了不少!!由于所输入的两个坐标可能不同,所以先进行一下统一,都变成统一的模式!!!最后进行计算!!!#include<iostream>using namespace std;int main(){ int i; double a[2], b[2]; double x[4], y[4];while (scanf("%lf%lf", x, y) != EOF) { for (i = 1; i < 4; i++) scanf(& 阅读全文
posted @ 2012-10-02 11:30 @ 小浩 阅读(354) 评论(0) 推荐(0) 编辑
  2012年10月1日
摘要: 此题比较麻烦,主要在于所比较的两个数比较可能超出double等类型的正常范围,所以你只能选择字符数组来存放这些数字,同时请注意在字符数组中0011.0100和11.01是相等的!此外还应注意当其中一个数1.000这样的数时,不仅要去掉小数点后面的0还要把小数点也一定去掉!其中关于strchr的函数请参考http://www.cnblogs.com/xiohao/archive/2012/10/01/2709763.html!祝贺你轻松解决啊!呵呵!#include<iostream>#include<string.h>using namespace std; void 阅读全文
posted @ 2012-10-01 16:55 @ 小浩 阅读(838) 评论(0) 推荐(0) 编辑
摘要: 此题是一道简单的转换题!记住A呵呵a的ASCII值分别是65和97,如果没记住也没关系呵呵!用类型转换‘A’和‘a’也可以呵呵!#include<iostream>using namespace std;int main(){int n,x,m;char z;cin>>n;getchar();while(n--){ cin>>z>>x; if(z>=65&&z<=90) m=z-'A'+x+1; if(z>=97&&z<=122) m=(-1)*(z-'a'+ 阅读全文
posted @ 2012-10-01 15:52 @ 小浩 阅读(230) 评论(0) 推荐(0) 编辑