C语言复习 1月25日

1. 输入年月,输出该月天数(判断闰年)

闰年条件

满足下面任一条件即为闰年:

  1. 能被4整除,但不能被100整除
  2. 能被400整除

判断表达式:

((n%4==0 && n%100!=0) || (n%4==0 && n%400==0))

if-else 版本

#include <stdio.h>
main()
{
    int y,m,d;
    scanf("%d,%d",&y,&m);

    if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
        d=31;
    else if(m==4||m==6||m==9||m==11)
        d=30;
    else if(m==2)
    {
        if(y%400==0||y%4==0&&y%100!=0)
            d=29;
        else
            d=28;
    }

    printf("%d",d);
}

switch 版本

#include <stdio.h>
main()
{
    int y,m,d;
    scanf("%d,%d",&y,&m);

    switch(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
    {
        case 1:d=31;break;
        case 0:
            switch(m==4||m==6||m==9||m==11)
            {
                case 1:d=30;break;
                case 0:
                    switch(m==2)
                    {
                        case 1:
                            switch(y%400==0||y%4==0&&y%100!=0)
                            {
                                case 1:d=29;break;
                                case 0:d=28;break;
                            }
                    }
            }
    }
    printf("%d",d);
}

8ec10b479c97a2ae940e9dae7689fa35


2. 输入三角形三边,判断能否构成三角形并求面积

#include "math.h"
#include "stdio.h"
main()
{
    double a,b,c,s,area;
    scanf("%lf%lf%lf",&a,&b,&c);

    if(a+b>c&&a+c>b&&b+c>a)
    {
        s=(a+b+c)/2;
        area=sqrt(s*(s-a)*(s-b)*(s-c));
        printf("%lf",area);
    }
    else
        printf("不能构成三角形");
}

3. 根据三边判断三角形类型(等边/等腰/直角/一般)

#include <stdio.h>
main()
{
    float a,b,c;
    scanf("%f,%f,%f",&a,&b,&c);

    if(a+b>c&&a+c>b&&b+c>a)
    {
        if(a==b&&b==c)
            printf("等边三角形\n");
        else if(a==b||b==c||a==c)
            printf("等腰三角形\n");
        else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
            printf("直角三角形\n");
        else
            printf("一般三角形\n");
    }
    else
        printf("不能组成三角形");
}

4. 圆:半径 r=1.5 求周长与面积

#include <stdio.h>
main()
{
    float r,c,s,pi=3.1415926;
    r=1.5;
    c=2*pi*r; /*求圆周长*/
    s=pi*r*r; /*求圆面积*/
    printf("r=%f\n",r);
    printf("c=%7.2f,s=%7.2f\n",c,s);
}

5. 输入整型,输出绝对值

#include <stdio.h>
main()
{
    int a,absa;
    scanf("%d",&a);
    if(a<0)
        absa=-a;
    else
        absa=a;
    printf("%d",absa);
}

6. 圆 + 球 + 圆柱综合计算(scanf输入)

#include <stdio.h>
main()
{
    float pi,h,r,l,s,sq,vq,vz;
    pi=3.1415926;

    printf("请输入圆半径r圆柱高h:\n");
    scanf("%f,%f",&r,&h);

    l=2*pi*r;
    s=r*r*pi;
    sq=4*pi*r*r;
    vq=4.0/3.0*pi*r*r*r;
    vz=pi*r*r*h;

    printf("圆周长为:      =%6.2f\n",l);
    printf("圆面积为:      =%6.2f\n",s);
    printf("圆球表面积为:  =%6.2f\n",sq);
    printf("圆球体积为:    =%6.2f\n",vz);
    printf("圆柱体积为:=%6.2f\n",vq);
}

7. 程序与算法基础知识整理(考点)

  • 程序 = 数据结构 + 算法
  • 算法5个特性:有穷性、确定性、可行性、输入、输出
  • 算法表示:自然语言、流程图、伪代码、N-S流程图、C语言实现


8. if语句第二种形式(if...else)

if(表达式)
    语句1;
else
    语句2;




9. 答案截图

  • 【5】a+b>c&& b+c>a&& c+a>b && a>0 && b>0 && c>0
  • 【6】p=(a+b+c)/2.0;

10. 逗号运算符与逗号表达式

  • 格式:表达式1,表达式2
  • 先求解表达式1,再求解表达式2,取表达式2的值

例:

  • a=3*5,a*4 值为60
  • (a=3*5,a*4),a+5 值为20

11. 自增/自减(++ / --)

  • ++i:先加1再使用
  • i++:先使用再加1
  • --i:先减1再使用
  • i--:先使用再减1

12. 作业与答案截图

作业:


答案:

作业:

答案:

17 单精度
12 单精度或双精度





答案:


上一篇 C语言笔记 1月21日 函数
下一篇 C语言复习 进制转换
Keason

Keason管理员

flag{fkxqsVIVO50tmgbd}

本月创作热力图