初识C语言1

目录

1.什么是C语言?

2.第一个C语言程序

3.数据类型

4.变量与常量

4.1.定义变量的方法

4.2变量的命名

4.3变量的分类

4.4变量的使用

4.5变量的作用域和生命周期

4.6常量


首先 先讲解下怎么写代码

如下

//main - 固定的名字
//主函数 是程序的入口,写的C语言代码都是从main函数的第一行开始执行的
//main函数是必须有的,但是有且仅有一个
//
//C语言中所有的字符都是英文的字符
//int 是整型

int main()
{
	//写代码的地方
	printf("hello world\n");

	//printf 是库函数 - C语言的标准库中提供的一个现成的函数-直接可以使用
	//功能是在屏幕上打印信息
	//库函数的使用,是需要包含头文件的,printf需要的头文件叫:stdio.h

	return 0;
}


//非常古老的写法 - 不推荐
void main()
{
	printf("hehe\n");
}


//可以的
int main(void)//void是在明确表示main函数不接收参数
{
	//...
	return 0;
}
 
//可以的
int main(int argc, char* argv[])//int argc, char* argv[] 是在指定main函数的参数
{
	//...
	return 0;
}

1.什么是C语言?

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易 的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语 言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的 C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超 级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制 定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 [1] 目前2011年12月8 日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标 准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉 字编程。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

2.第一个C语言程序

#include 
int main()

{  

 printf("hello world\n");  

return 0;

}

//解释:

//main函数是程序的入口

//一个工程中main函数有且仅有一个

3.数据类型

char        //字符数据类型

short       //短整型

int         //整形

long        //长整型

long long   //更长的整形

float       //单精度浮点数

double      //双精度浮点数

#include <stdio.h>
int main()
{
    printf("%d\n", sizeof(char));//1
    printf("%d\n", sizeof(short));//2
    printf("%d\n", sizeof(int));//4
    printf("%d\n", sizeof(long));//4
    printf("%d\n", sizeof(long long));//8
    printf("%d\n", sizeof(float));//4
    printf("%d\n", sizeof(double));//8
    printf("%d\n", sizeof(long double));//8

运行结果如下

这是数据类型内存所占用的空间大小

seziof可以查看数据类型所占用的空间大小

4.变量与常量

生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等)

有些值是可变的(比如:年龄,体重,薪资)。

不变的值,C语言中用常量的概念来表示,变得值C语言中用变量来表示。

4.1.定义变量的方法

int age = 150;
float weight = 45.5f;
char ch = 'w';

你写45.5编译器会默认为double类型

如果你想写成float类型的变量需要在后面加个f进行转换

4.2变量的命名

1.只能由字母(包括大写和小写),数字和下划线(_)组成     int a*3;//err

2.不能以数字开头                                                       int 2b;//err                   

3.长度不能超过63个字符。                                        int _2b;//ok

4.变量名中区分的大小写的。                                     int _2B;//ok

5.变量名不能使用关键字                                            int char;//errr

变量的名字尽量写成有意义的

4.3变量的分类

1.局部变量

2.全局变量

#include <stdio.h>
int global = 2019;//全局变量
int main()
{
    int local = 2018;//局部变量
    int global = 2020;//局部变量
    printf("global = %d\n", global);
    return 0;
}

 问:下面定义的global会不会有问题?

答:上面的局部变量global变量的定义其实没有什么问题的

        当局部变量和全局变量同名的时候,局部变量优先使用

4.4变量的使用

#include <stdio.h>
int main()
{
    int num1 = 0;
   int num2 = 0;
    int sum = 0;
    printf("输入两个操作数:>");
    scanf("%d %d", &num1, &num2);
    sum = num1 + num2;
    printf("sum = %d\n", sum);
    return 0;

这里介绍一下

scanf是输入语句

printf是输出语句

4.5变量的作用域和生命周期

作用域

作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用 的

而限定这个名字的可用性的代码范围就是这个名字的作用域。

1. 局部变量的作用域是变量所在的局部范围。

2. 全局变量的作用域是整个工程。

生命周期

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

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

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

4.6常量

C语言中的常量和变量的定义的形式有所差异。

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

字面常量

const 修饰的常变量

#define 定义的标识符常量

枚举常量

下面以代码的形式展示

#include <stdio.h>
//举例
enum Sex
{
 MALE,
 FEMALE,
 SECRET
};
//括号中的MALE,FEMALE,SECRET是枚举常量
int main()
{
    //字面常量演示
    3.14;//字面常量
    1000;//字面常量
    
    //const 修饰的常变量
    const float pai = 3.14f;   //这里的pai是const修饰的常变量
    //pai = 5.14;//是不能直接修改的!
    
    //#define的标识符常量 演示
 #define MAX 100
    printf("max = %d\n", MAX);
    
    //枚举常量演示
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n", SECRET);
    //注:枚举常量的默认是从0开始,依次向下递增1的
    return 0;
    }

运行结果如下

上面例子上的 pai 被称为 const 修饰的常变量, const 修饰的常变量在C语言中只是在语法层面限制了 变量 pai 不能直接被改变,但是 pai 本质上还是一个变量的,所以叫常变量。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值