HDOJ2000、2001、2002、2003、2004

2746 ワード

2000 ASCIIコードソート
この問題は超簡単で、はっきり言って3つの数を小さい順に並べ替えます.
コードの表示:
#include<stdio.h>
void main()
{
    char ch1,ch2,ch3,temp;
    while(scanf("%c%c%c",&ch1,&ch2,&ch3)!=EOF)
    {
        getchar();
        if(ch1>ch2)
        {
            temp=ch1;
            ch1=ch2;
            ch2=temp;
        }
        if(ch1>ch3)
        {
            temp=ch1;
            ch1=ch3;
            ch3=temp;
        }
        if(ch2>ch3)
        {
            temp=ch2;
            ch2=ch3;
            ch3=temp;
        }
        printf("%c%2c%2c
",ch1,ch2,ch3); } }
2001 2 の
と された をdouble double x 1,y 1,x 2,y 2,distと することが である.また、 フォーマットには があり、 の2 の printf("%2 lf",dist)を することが される.
#include<stdio.h>
#include<math.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
",dist); } return 0; }
2002 の
#include<stdio.h>
#include<math.h>
#define PI 3.1415927
void main()
{
    double r,s;
    while(scanf("%lf",&r)!=EOF)
    {
        s=(double)(4*PI*pow(r,3))/3;
        printf("%.3lf
",s); } }
2003 を める
#include<stdio.h>
#include<math.h>
void main()
{
    double num;
    while(scanf("%lf",&num)!=EOF)
    {
        printf("%.2lf
",fabs(num)); } }
の2001-2003はmathを び した.hの の の 、pow()は の の を めます;sprt()はルート の を める.fabs()は を める.
2004 の
switch(){case......}への です.
#include<stdio.h>
void main()
{
    int n;
    double t;
    while(scanf("%lf",&t)!=EOF)
    {
        if(t>=90&&t<=100)
            n=1;
        else if(t>=80&&t<=89)
            n=2;
        else if(t>=70&&t<=79)
            n=3;
        else if(t>=60&&t<=69)
            n=4;
        else if(t>=0&&t<=59)
            n=5;
        else
            n=0;
        switch(n)
        {
            case 0:printf("Score is error!
");break; case 1:printf("A
");break; case 2:printf("B
");break; case 3:printf("C
");break; case 4:printf("D
");break; case 5:printf("E
");break; } } }