2018年6月28日

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:体验逻辑短路;
*输入描述:;;
*程序输出:;。
*/

#include <stdio.h>
int main()
{
    int a=5,b=6,c=7,d=8,m=2,n=2;
    (m=a>b)&&(n=c>d);//与逻辑,前一个表达式为0,后一个表达式不会运算;
    printf("%d %d\n",m,n);
    (m=a<b)||(n=c>d);//或逻辑,前一个表达式为1,后一个表达式不会运算;
    printf("%d %d\n",m,n);
    (m=a>b)||(n=c>d);//或逻辑,前一个表达式为0,后一个表达式参与运算并计算出0,总的为0;
    printf("%d %d\n",m,n);
    (m=a<b)&&(n=c<d);
    printf("%d %d\n",m,n);
    return 0;
}

 
 
/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:判断闰年;闰年的条件是符合下面两者之一: ①能被4整除,但不能被100整除。②能被400整除。
*输入描述:;;
*程序输出:;。
*/

#include <stdio.h>
int main()
{
    int year;
    printf("请输入一个年份:");
    scanf("%d",&year);
    if((year%4==0&&year%100!=0)||year%400==0)
    {
        printf("%d年是闰年!",year);
    }
    else
    {
        printf("%d年不是闰年!",year);
    }
    return 0;
}

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:使用if语句,输出最大的。
*输入描述:;;
*程序输出:;。
*/

#include <stdio.h>
int main()
{
    float a,b,c;
    scanf("%f %f",&a,&b);
    if(a>b)
    {
        c=a;
    }
    else
    {
        c=b;
    }
    printf("输入的两个数中,最大的是:%f\n",c);
    return 0;

}

 

 

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:使用if嵌套语句,对体重进行判别。
*输入描述:;;
*程序输出:;。
*/

#include <stdio.h>
int main()
{
    float weight,standard_weight,height;
    printf("请输入你的体重(KG):\n");
    scanf("%f",&weight);
    printf("请输入你的身高(cm):\n");
    scanf("%f",&height);
    standard_weight=height-100;
    if(weight>standard_weight)
    {
        printf("你有点超重哦!");
    }
    else
    {
        if(weight>=standard_weight*0.8)
        {
            printf("你的身材很好!");
        }
        else
        {
            printf("你有点太瘦了,需要增重!");
        }
    }
    return 0;
}

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:输入三个边长,如果能构成三角形的话,则计算其面积。
*输入描述:;三角形的三个边长;
*程序输出:;三角形面积或告警!。
*/

#include <stdio.h>
#include <math.h>
int main()
{
    float side1,side2,side3,s,area;
    printf("请输入三角形的边长1:\n");
    scanf("%f",&side1);
    printf("请输入三角形的边长2:\n");
    scanf("%f",&side2);
    printf("请输入三角形的边长3:\n");
    scanf("%f",&side3);
    if(side1+side2>side3&&side1+side3>side2&&side2+side3>side1)
    {
        printf("该三角形的三边分别为:%f %f %f\n",side1,side2,side3);
        s=(side1+side2+side3)/2;
        area=sqrt(s*(s-side1)*(s-side2)*(s-side3));
        printf("该三角形的面积为:%f",area);
    }
    else
    {
        printf("输入的三边长度不满足构成三角形的条件!\n");
    }
    return 0;
}

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:解一元二次方程,ax^2+bx+c=0,求解。
*输入描述:;a,b,c;
*程序输出:;x1,x2。
*/

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

int main()
{
    float a,b,c,x1,x2;
    printf("请分别输入方程ax^2+bx+c=0三个系数a b c:\n");
    scanf("%f %f %f",&a,&b,&c);
    if((b*b-4*a*c)>=0)
    {
        printf("输入的方程是:%fx^2+%fx+%f=0",a,b,c);
        x1=(-b+sqrt(b*b-4*a*c))/(2*a);
        x2=(-b-sqrt(b*b-4*a*c))/(2*a);
        printf("方程%fx^2+%fx+%f=0的解是x1=%f,x2=%f",a,b,c,x1,x2);

    }
    else
    {
        printf("输入的方程%fx^2+%fx+%f=0无解",a,b,c);
    }
    return 0;
}

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:if 和 else if;求解分段函数;
*输入描述:;x及其取值范围,y(x)表达式;
*程序输出:;x1,x2。
*备注“if 和 else if;其中分段函数一段的范围x<2;二段的范围[2,6);
*if(x<2);else if(x<6);
*虽然else if(x<6),但是else if的范围是[2,6)!!!!剔除了if(x<2)的范围;以此类推;最后else的范围不填即可;
*/

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

int main()
{
    float x,y;
    printf("y=x,x<2\n");
    printf("y=x^2+1,2<x<=6\n");
    printf("y=sqrt(x+1),6<=x<10\n");
    printf("y=1/(x+1),x>10\n");
    printf("请输入x的值:\n");
    scanf("%f",&x);
    if(x<2)
    {
        y=x;
        printf("y的值是:%f\n",y);
    }
    else if(x<=6)
    {
        y=x*x+1;
        printf("y的值是:%f\n",y);
    }
    else if(x<=10)
    {
        y=sqrt(x+1);
        printf("y的值是:%f\n",y);
    }
    else
    {
        y=1/(x+1);
        printf("y的值是:%f\n",y);
    }
    return 0;
}


/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:体验switch语句的使用;
*输入描述:;输入0,1,2,3,4,5,6;
*程序输出:;对应的星期。
*/

#include <stdio.h>
int main()
{
    int day;
    printf("Please input the number of week!\n");
    printf("Example:0//Sunday;1//Monday;2//Tuesday……\n");
    scanf("%d",&day);
    switch(day)
    {
        case 0:
        printf("Tody is Sunday!\n");
        break;
        case 1:
        printf("Tody is Monday!\n");
        break;
        case 2:
        printf("Tody is Tuesday!\n");
        break;
        case 3:
        printf("Tody is Wednesday!\n");
        break;
        case 4:
        printf("Tody is Thursday!\n");
        break;
        case 5:
        printf("Tody is Friday!\n");
        break;
        case 6:
        printf("Tody is Saturday!\n");
        break;
        default:
        printf("Input error!");
    }
    return 0;
}


/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:使用switch语句做一个简单的四则运算!;
*输入描述:;float char float;
*程序输出:;float。
*备注:
*case后是冒号;case后的条件与case有无空格都可以;
*注意带break!!!
*/

#include<stdio.h>
#include<math.h>
int main()
{
    float a,b,c;
    char op;
    printf("请输入两个数的四则运算:example:4.2+1.8\n");
    scanf("%f%c%f",&a,&op,&b);
    switch(op)
    {
    case'+':
        c=a+b;
        printf("%f\n",c);
        break;
    case'-':
        c=a-b;
        printf("%f\n",c);
        break;
    case'*':
        c=a*b;
        printf("%f\n",c);
        break;
    case'/':
        if(b==0)
        {
            printf("除数不能为零!\n");
        }
        else
        {
            c=a/b;
            printf("%f\n",c);
        }
        break;
    default:
        printf("输入有误,请重新输入!\n");
        break;
    }
    return 0;
}

/*
*copyright(c) 2018,HH
*All rights reserved.
*作 者:HH
*完成日期:2018年6月28日
*版本号:v1.0
*
*问题描述:灵活使用switch语句;if(else)语句转化为switch语句使用;
*输入描述:;;
*程序输出:;。
*备注:
*case后只能跟常量,用作执行入口,而不是判断;
*freight=price*wight*distance*(1-discount)
*注意语句的执行顺序!!!!!!!!!!!!!!!!!
*/
#include<stdio.h>
int main()
{
    float price,distance,weight,discount,freight;
    int x;
    //x=(distance<250)+(distance<500)+(distance<1000)+(distance<2000)+(distance<3000);
    printf("请输入基本运费:(元)\n");
    scanf("%f",&price);
    printf("请输入货物重量:(Kg)\n");
    scanf("%f",&weight);
    printf("请输入运输距离:(Km)\n");
    scanf("%f",&distance) ;
    //freight=price*distance*weight*(1-discount);在此计算不正确,因为discount并未给出确定的值!!!
    x=(distance<250)+(distance<500)+(distance<1000)+(distance<2000)+(distance<3000);
    switch(x)
    {
    case 5:
        discount=0;
        freight=price*distance*weight*(1-discount);
        printf("距离I段,不打折,该货物的总运费为:%f\n",freight);
        break;
    case 4:
        discount=0.02;
        freight=price*distance*weight*(1-discount);
        printf("距离II段,打98折,该货物的总运费为:%f\n",freight);
        break;
    case 3:
        discount=0.05;
        freight=price*distance*weight*(1-discount);
        printf("距离III段,打95折,该货物的总运费为:%f\n",freight);
        break;
    case 2:
        discount=0.08;
        freight=price*distance*weight*(1-discount);
        printf("距离III段,打92折,该货物的总运费为:%f\n",freight);
        break;
    case 1:
        discount=0.1;
        freight=price*distance*weight*(1-discount);
        printf("距离IV段,打9折,该货物的总运费为:%f\n",freight);
        break;
    case 0:
        discount=0.15;
        freight=price*distance*weight*(1-discount);
        printf("距离V段,打85折,该货物的总运费为:%f\n",freight);
        break;
    default:
        break;
    }
    return 0;
}


 

#include<stdio.h>
int main()
{
    double x;
    scanf("%lf",&x);
    printf("%lf\n",(x>0)?:x:-x);
    return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值