算法竞赛入门经典习题集

终于开始迈出第一步了,小纪念一下,坚持~~~

第一章

习题1-1 平均数 
输入3个整数,输出他们的平均值,保留3位小数

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);
    printf("%f\n",(a+b+c)/3.0);
    return 0;
}

习题1-2 温度 
输入华氏温度f,输出对应的摄氏温度c,保留3位小数。提示:c=5(f-32)/9。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    float f;
    scanf("%f",&f);
    printf("c = %.2f\n",5*(f-32)/9.0);
    return 0;
}

习题1-3 连续和 
输入整数n,输出1+2+3+…+n的值。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,sum=0,i=1;
    scanf("%d",&n);
    /*for(;i<=n;i++){
        sum += i;
    }
    printf("%d\n",sum);*/
    printf("%d\n",(n+1)*n/2);
    return 0;
}

习题1-4 正弦和余弦 
输入正整数n(n<360),输出n度的正弦值、余弦值。提示:使用数学函数。

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
    int n;
    double PI = 3.14159;
    scanf("%d",&n);
    printf("sin%d=%.2f  cos%d=%.2f\n",n,sin(n*PI/180),n,cos(n*PI/180));
    return 0;
}

习题1-5 距离 
输入正整数n(n<360),输出n度的正弦值、余弦值。提示:使用数学函数。

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    double x1,y1,x2,y2;
    scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2);
    printf("%.2f\n",sqrt(x1*x1+y1*y1-x2*x2-y2*y2));
    return 0;
}

习题1-6 偶数 
输入一个整数,判断它是否为偶数。如果是,则输出“Yes”,否则输出“No”。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n;
    scanf("%d",&n);
    if(n%2==0)
        printf("Yes\n");
    else
        printf("No\n");

    return 0;
}

习题1-7 打折 
一件衣服95元,若消费满300元,可以打八五折。输入购买衣服件数,输出需要支付的金额(单位:元),保留两位小数。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n;
    scanf("%d",&n);
    if(n>4)
        printf("%lf\n",n*95*0.85);
    else
        printf("%.2lf\n",n*95*1.0);
    return 0;
}

习题1-8 绝对值 
输入一个浮点数,输出它的绝对值,保留两位小数。

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    double n;
    scanf("%lf",&n);
    if(n>=0)
        printf("%.2lf\n",n);
    else
        printf("%.2lf\n",n*(-1.0));
    return 0;
}

习题1-9 三角形 
输入三角形三边长度值(均为正整数),判断它是否能为直角三角形的三边长。如果可以,输出“Yes”,否则输出“No”。如果根本无法构成三角形,输出“not a triangle”。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a,b,c,temp;
    scanf("%d %d %d",&a,&b,&c);
    if(a>b){temp=a;a=b;b=temp;}
    if(b>c){temp=b;b=c;c=temp;}
    if(a>c){temp=a;a=c;c=temp;}
    if(a+b>c){
        if(a*a+b*b==c*c)
            printf("Yes\n");
        else
            printf("No\n");
    }else{
        printf("not a triangle\n");
    }
    return 0;
}

习题1-10 年份 
输入年份,判断是否是闰年。如果是,输出“Yes”,否则输出“No”。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int y;
    scanf("%d",&y);
    if((y%4==0&&y%100!=0)||(y%400==0))
        printf("Yes\n");
    else
        printf("No\n");
    return 0;
}

 

由于时间关系,以上代码中,部分异常数据的判断语句没有详细写出~感兴趣的同学可以自己补充完整哦~~~

 

本文为原创,若要转载,请注明出处哦~~~

 

posted @ 2015-11-29 11:47  isabelbai  阅读(447)  评论(0编辑  收藏  举报