zoukankan      html  css  js  c++  java
  • C语言复习1_变量与数据类型

    变量命名规则:

    1、变量名的首字母或下划线(不能是其他特殊符号)

    2、变量名的其他字母包含下划线、数字 和字母

    3、不能使用关键字

    基本数据类型

    分为数值型和非数值型,其中数值型分为整型和非整型

    整型分为int,short和long

    非整型分为单精度float(小数点后位数少 )和双精度double(小数点后位数多)

    非数值型有char

    详细如下图:

    声明变量:

    int score totle;
    short int studentNo;
    long id_card

    初始化变量:

    score_totle = 590;
    studentNo = 20;

    举例:

    #include <stdio.h>
    
    int main()
    {
        float height = 150.0f;
        float width = 25.0f;
        float s = height*width;
        printf("长方形的面积为:%.2f
    ", s);
        return 0;
    }

    double

    double是双精度浮点型变量,在声明时需要注意的有:

    1、通常小数被存储为double类型,如2.0和9.0,

    2、数字后使用L时,数字成为long double类型,如4.5L

    #include <stdio.h>
    
    void main()
    {
        double radius=2.5;
        double area=3.141592633*radius*radius;
        printf("圆的半径为%lf,面积为%lf
    ",radius,area);
    }

    double类型的占位符是lf

    char类型的声明

    #include <stdio.h>
    int main()
    {
        char ch=97;//字符
        printf("要打印的字符为:%c
    ",ch);
        return 0;
    }

    注意占位符,输出结果是'a',再变化一下

    #include <stdio.h>
    int main()
    {
        char ch='a';//字符
        printf("要打印的字符为:%d
    ",ch);
        return 0;
    }

    输出结果是97

    #include <stdio.h>
    int main()
    {
        char ch='a';//字符
        printf("要打印的字符为:%d
    ",ch);
        return 0;
    }

    输出结果是97

    说明char类型可以是ASCII码与字符之间互相转换

    备注:32对应空格;65~90对应A~Z;97~122对应a~z

    scanf函数

    用来读取不同格式的数据

    基本用法

    int num;
    printf("请输入数量:");
    scanf("%d",&num);

    注意:这里的&目的是把输入的值赋值给后面的num变量

    运算符

    int num 5/2;
    double num = 5/2

    输出结果:2, 2.000000

    5/2的结果原本就是整型,而double的作用是自动类型转换

    小练习

    要求

    某游戏中近战武器的实际伤害计算公式为:

    武器实际最大伤害=武器最大伤害*(玩家力量+100)/ 100

    现有如下武器,武器最大伤害256,要求输入玩家的力量,打印武器实际最大伤害

    思考:

    需要定义几个变量?--武器实际最大伤害,玩家的力量,武器最大伤害

    对应什么数据类型?--double

     代码如下:

    double actualHurt;
    int strength;
    double maxHurt = 256;
    printf("请玩家输入当前角色的力量:");
    scanf("%d",&strength);
    actualHurt = maxHurt*(strength+100)/100;
    printf("武器实际伤害是:%.2lf",actualHurt);
    return 0;

    变量命名规则

    1、首字母:_和普通字母

    2、其他字母:_、普通字母和数字

    3、不能是关键字

    自增

    int num=10;
    num++;//num = num +1;等价
    printf("%d
    ",num);

    类型转换

    short < int < long < float < double

    double num = 6; //小类型转大类型-自动类型转换
    int num1 = num; //大类型转小类型-强制类型转换
    人生苦短,何不用python
  • 相关阅读:
    606. Construct String from Binary Tree
    696. Count Binary Substrings
    POJ 3255 Roadblocks (次短路)
    POJ 2823 Sliding Window (单调队列)
    POJ 1704 Georgia and Bob (博弈)
    UVa 1663 Purifying Machine (二分匹配)
    UVa 10801 Lift Hopping (Dijkstra)
    POJ 3281 Dining (网络流之最大流)
    UVa 11100 The Trip, 2007 (题意+贪心)
    UVaLive 4254 Processor (二分+优先队列)
  • 原文地址:https://www.cnblogs.com/yqpy/p/10367494.html
Copyright © 2011-2022 走看看