数据类型·运算符·表达式·常量·变量

数据类型

#include <stdio.h>
int main()
{
    char ch = 'a';//创建一个字符型变量,并申请一个字节内存空间存放"a",字符型使用单引号
    int age = 20;//创建整形变量,并申请内存空间
    short num = 10;//短整型
    float f = 4.6f;//默认小数为double型,从高精度到低精度会造成精度丢失,因此出现错误,需要加f
    double d=3.14;
    printf("%lf\n", d);
    printf("%f\n", f);
    printf("%c\n", ch);// %c打印字符格式的数据;/n换行
    printf("%d\n", age);//%d打印整形十进制格式的数据
    
    return 0;
}
//%d --打印整形
//%c--打印字符型
//%f--打印float型
//%lf--打印double型
//%x--打印16进制数字

每种数据类型的大小

#include <stdio.h>
int main()
{
    printf("%d\n", sizeof(char)); // 1个字节:8bit-2^8 个地址
    printf("%d\n", sizeof(long));// 4/8个字节
    printf("%d\n", sizeof(short));// 2个字节:16bit-2^16 个地址
    printf("%d\n", sizeof(int));// 4个字节:32bit-2^32 个地址
    printf("%d\n", sizeof(long long));// 8个字节
    printf("%d\n", sizeof(float));//   4个字节
    printf("%d\n", sizeof(double));//   8个字节
    return 0;
}

sizeof --关键字--操作符--计算类型或者变量所占空间的大小

C语言规定:sizeof (long)>=sizeof (int)

选择不同的数据类型,空间利用率更高

计算机进制表示

bit 比特位 --二进制 -- 0和1

byte 字节 --8bit

kb =1024byte

mb=1024 kb

gb=1024mb

常量、变量

  1. 常量:不能改变的量

  2. 变量:能被改变的量

1.变量

(1)变量的定义方法

类型 变量的名字 [=常量]

#include <stdio.h>
int main()
{
    //创建变量
    //类型 变量的名字 =0;
    int age = 20;
    age = age + 1;//变量可以变化
    printf("%d\n", age);
​
    return 0;
}

(2)变量的分类

  • 全局变量:{}函数外部定义的

  • 局部变量:{}函数内部定义的

int a = 100;//全局变量
int main()
{
    int a = 10;//局部变量
    printf("%d\n", a);//结果为10
    return 0;
}
​

当局部变量和全局变量名字冲突的情况下,局部优先

不建议,把全局变量和局部变量的名字写成一样的

(3)如何使用变量

//求两个整数的和
​
#define  _CRT_SECURE_NO_WARNINGS 1 //放在代码的第一行
#include<stdio.h>
int main()
{
    int a = 0;
    int b = 0;
    int sum = 0;
    //scanf 函数是输入函数
    scanf("%d %d", &a, &b);//输入数据时,也要输入空格
    sum = a + b;
    printf("%d\n", sum);
    return 0;
}

注意

当出现下列错误时:

解决方法:

  • 源文件的第一行加上:#define _CRT_SECURE_NO_WARNINGS 1

    • 或者一次性加入;找到VS路径中的newc++file.cpp ,以管理员身份运行记事本,输入#define _CRT_SECURE_NO_WARNINGS 1 ,则以后再建.c文件不需要再另加了。

  • 使用scanf_s函数:scanf_s函数是VS编译提供的,不是C语言标准规定的;

(4)变量的作用域和生命周期

作用域:限定变量的可用性的代码范围就是这个变量的作用域。

  1. 局部变量的作用域是变量所在的局部范围(即局部变量只能在所在的局部范围内可以使用)

    #include <stdio.h>
    int main()
    {
        { 
        int a = 2022;
        printf("%d\n", a);  
        }    //变量a只在此{}内可用
        return 0;
    }

  2. 全局变量的作用域是整个工程(当一个源文件使用另一个源文件定义的全局变量时,需要声明一下:(“extern int a”

    #include <stdio.h>
    int a = 2022;  //全局变量a在整个工程内可用
    int main()
    {
        printf("1:%d\n", a); 
        { 
        printf("2:%d\n", a); 
        
        }    
        printf("3:%d\n", a);
        return 0;
    }
    #include <stdio.h>
    //可以使用同一工程下的不同源文件的全局变量,但是需要声明一下变量
    extern int a;//extern 声明外部符号
    int main()
    {
        printf("%d\n", a);
        return 0;
    }

生命周期:变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。

  1. 局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束。

  2. 全局变量的生命周期:整个程序的生命周期。

2.常量

C语言中的常量分为以下几种:

//1。字面常量

3.14;//float型常量
20;//整形常量
'a'//字符型常量
'asdf'//字符串常量
    
//2. const 修饰的常变量
​
//age是变量,可以更改
int age = 20;  
printf("%d\n", age);
age = 10;            
printf("%d\n", age);
​
//const修饰age是常变量-具有常属性(不能改变的属性),但本质仍然是变量
const int age = 20;
printf("%d\n", age);
age = 10;
printf("%d\n", age);  //报错
​
//n本质还是变量,定义数组时[常量表达式],所以报错
    int arry[10] = { 0 };
    const int n = 10;
    int arry2[n] = { 0 };
​
//3.define 定义的标识符常量

#include<stdio.h>
#define MAX 10000;
int main()
{
    MAX=2000;//MAX的值不能更改,报错
    int n = MAX;
    printf("n=%d\n", n);
    return 0;
}
​
​
//4.枚举常量--可以一一列举的常量(例如:性别)
​
    enum Sex  //创建枚举类型
    {
        MALE=3,//可以附初值,但是不可以改
        FEMALE,
        SECRET
    };
    enum Sex s = MALE;  //创建一个枚举类型的常量s;
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n", SECRET);//输出结果为0,1,2;枚举常量默认从0开始;
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
牙科就诊管理系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线查看数据。管理员管理病例管理、字典管理、公告管理、药单管理、药品管理、药品收藏管理、药品评价管理、药品订单管理、牙医管理、牙医收藏管理、牙医评价管理、牙医挂号管理、用户管理、管理员管理等功能。牙科就诊管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 管理员在后台主要管理病例管理、字典管理、公告管理、药单管理、药品管理、药品收藏管理、药品评价管理、药品订单管理、牙医管理、牙医收藏管理、牙医评价管理、牙医挂号管理、用户管理、管理员管理等。 牙医列表页面,此页面提供给管理员的功能有:查看牙医、新增牙医、修改牙医、删除牙医等。公告信息管理页面提供的功能操作有:新增公告,修改公告,删除公告操作。公告类型管理页面显示所有公告类型,在此页面既可以让管理员添加新的公告信息类型,也能对已有的公告类型信息执行编辑更新,失效的公告类型信息也能让管理员快速删除。药品管理页面,此页面提供给管理员的功能有:新增药品,修改药品,删除药品。药品类型管理页面,此页面提供给管理员的功能有:新增药品类型,修改药品类型,删除药品类型
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值