- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
这些代码是我经过一段时间的做题后总结而成的,可以说是本人做题的第一手资料。虽然现在回过头来看看很简单,甚至有些幼稚,但我想也没有必要将其改的过于精辟,因为我认为作为c语言的初学者来说,只有那些以初学者的身份写出来的代码才是最易懂的。所以希望这些代码能给大家带来些帮助。
另外也希望大家不在万不得已,尽量不要看代码,尽量自己去想,这样才能不断进步,才能真正体会到编程的乐趣。
2000
#includestdio.h
int main()
{
char ch1,ch2,ch3,temp;
while(scanf(%c%c%c,ch1,ch2,ch3)!=EOF)
{
getchar();
if(ch1ch2)
{
temp=ch1;
ch1=ch2;
ch2=temp;
}
if(ch1ch3)
{
temp=ch1;
ch1=ch3;
ch3=temp;
}
if(ch2ch3)
{
temp=ch2;
ch2=ch3;
ch3=temp;
}
printf(%c%2c%2c\n,ch1,ch2,ch3);
}
return 0;
}
做第一道题目,很多人都会问“输入多组数据这么处理?”,现在你应该白了吧?其实这种情况在ACM上比比皆是。关键就在那个“!=EOF”上啦。对于这道题目首先将第一个字符和第二个字符比较,将较小的放在首位,再将第一个和第三个比较,同样将较小的放在首位,经过前两次比较,第一个是最小的就确定了,再将第三个和第二个比较,将较小的放在第二位,较大的放在第三位。经过三次比较他们的位置就确定了,接下来输出的时候要注意空格,应为格式错误就全盘皆输了^_^。
2001
#includestdio.h
#includemath.h
int main()
{
double x1,y1,x2,y2,dist;
while(scanf(%lf%lf%lf%lf,x1,y1,x2,y2)!=EOF)
{
dist=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf(%.2lf\n,dist);
}
return 0;
}
因为考虑到两点间距离会有小数出现,且题目要求输出时保留两位小数,所以这里我们采用“double”来定义变量。接下来的两点间距离公式我想大家都知道的吧。这里还用到一个“sqrt”开方的函数,是包含在头文件“math.h”里的,所以在开头要先申明了。在编程的时候要尽量用,要“巧用”库函数,这样可以提高效率,同样也可以减少代码的复杂度。
2002
#define PI 3.1415927
#includestdio.h
int main()
{
double a,v;
while(scanf(%lf,a)!=EOF)
{
v=(4.0/3)*PI*a*a*a;
printf(%.3lf\n,v);
}
return 0;
}
同样的道理,应为PI的值是一个比较复杂的值,所以开始的时候我们用宏定义来规定它的值,同时也是为了我们以后方便修改。另外利用圆的体积公式我们求出其体积。最后输出时保留三位小数,我们利用“%.3lf”来实现。当然别忘了输完一个后换行”\n”^_^.
2003
#includestdio.h
int main()
{
double a;
while(scanf(%lf,a)!=EOF)
{
if(a0) a=(-a);
printf(%.2lf\n,a);
}
return 0;
这道题目一看就知道很简单是吧?但千万别忘了有小数点的情况,所以我们还是采用”double”来定义变量。
2004
#includestdio.h
int main()
{
int a,b;
while(scanf(%d,a)!=EOF)
{
b=a/10;
if(a0||a100)
b=(-1);
switch(b)
{
文档评论(0)