小白初识c语言(超友好)!!!(一)

简介: 小白初识c语言(超友好)!!!(一)

本期博客面向初始c语言的同学,无深入的内容,即将步入大学的理工科友友们可以放心冲!!!!

什么是c语言

C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括一些类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。


电脑分为各种硬件和操作系统(windows)以及驱动层,C语言主要操作下层和底层。简单来说C语言是一门和计算机沟通的语言就像是英语汉语语言,以后还会学更多语言比如Java,C++等等。

第一个C语言程序

同学们先跟着我一起操作,代码原理我下面会讲

写第一个c语言前我们先下载一个编译器,相当于翻译软件。

下面是我分享的链接,同学们可以放心食用,没有期限哦。

链接:C语言编译器vs2019下载百度网盘链接

提取码:qwer

ok我们进入正题

1.点开软件我们会看见这样一个界面,点击创建新项目

2.点击后会弹出这样一个界面,我们选择空项目,点击下一步

3.输入你项目名称,然后选择项目所在路径(点击三个点的那个按钮就可以自定义),然后创建

4.右击Project2然后鼠标放在添加,然后点击新建项

5.然后显示一个这样的界面,依旧选择C++文件,将下面的名称该为某某.c

为啥这样呢因为vs只能创建C++文件,但C++ 是C语言的超集,兼容C语言,

然后点击添加就行了。

6.然后输入代码就可以点击上方空三角形运行。

#include <stdio.h>
int main() {
  printf("我的第一个C语言程序");
  return 0;
}

作者从一段最简单的C语言代码开始说起,这段代码的输出是“我的第一个C语言程序”。作者使用的是VS2019编译器。那么我们该如何理解这段代码。首先我们会最先看到最上面的#include,那么它代表着什么意思呢?stdio.h是standa input & output header的缩写,这句话的意思就是引入输入与输出函数,每当输入输出函数被调用时就要对其进行调用。这是因为C语言没有相关的输入输出语句,只能通过库函数进行相关的操作。接下来我们会看到 int main(){return 0;}的一个架构,**它是定义了一个主函数,而主函数是所有程序的入口,一个项目中有且仅有一个主函数,也就代表着只有一个入口,如果在一个项目的其他文件中再次加入主函数,那么程序便会报错,**同时主函数中的返回值是一个整数,因为我们在定义主函数的时候使用的是int。其余的部分则是代码部分。

数据类型

char //字符数据类型

short //短整型

int //整形

long //长整型

long long //更长的整形

float //单精度浮点数

double //双精度浮点数


//C语言有没有字符串类型?

1.首先为什么会有这些数据类型,我们生活当中有各种各样的量度,而数据类型就是计算机语言的量度,他可以更加的具象化

#include <stdio.h>
int main()
{
printf("%d\n", sizeof(char));
printf("%d\n", sizeof(short));
printf("%d\n", sizeof(int));
printf("%d\n", sizeof(long));
printf("%d\n", sizeof(long long));
printf("%d\n", sizeof(float));
printf("%d\n", sizeof(double));
printf("%d\n", sizeof(long double));
return 0;
}

2.每一种数据类型在内存中大小都不一样

运行以上代码就能够知道每一种数据类型大小

在不同的系统上,这些类型占据的字节长度是不同的:

在32 位的系统上

short 占据的内存大小是2 个byte;

int占据的内存大小是4 个byte;

long占据的内存大小是4 个byte;

float占据的内存大小是4 个byte;

double占据的内存大小是8 个byte;

char占据的内存大小是1 个byte。

变量,常量

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

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

1. 变量的命名

只能由字母(包括大写和小写)、数字和下划线( _ )组成。

不能以数字开头。

长度不能超过63个字符。

变量名中区分大小写的。

变量名不能使用关键字。

2.定义变量方法以及变量使用

c语言中输出的类型格式

1、%d-以十进制形式输出带符号整数;

2、%o-以八进制形式输出无符号整数(不输出前缀O);

3、%x-以十六进制形式输出无符号整数(不输出前缀OX);

4、%u-以十进制形式输出无符号整数;

5、%f-以小数形式输出单、双精度实数;

6、%e-以指数形式输出单、双精度实数;

7、%g-以%f%e中较短的输出宽度输出单、双精度实数;

8、%c-输出单个字符;


#include <stdio.h>
int main()
{
  int a = 1;
  double b = 1.0;
  float c = 1.0;
  char d = 'a';
  short e = 1;
  long f = 1;
  printf("%d %lf %f %c %d %d", a,b,c,d,e,f);
  return 0;
}

3.变量分类

  • 全局变量
  • 局部变量
#include <stdio.h>
int global = 2019;//全局变量
int main()
{
  int local = 2018;//局部变量
  //下面定义的global会不会有问题?
  int global = 2020;//局部变量
  printf("global = %d\n", global);
  return 0;
}

总结:

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

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

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

  • 作用域 作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用
 - 的而限定这个名字的可用性的代码范围就是这个名字的作用域。
 - 局部变量的作用域是变量所在的局部范围。
 - 全局变量的作用域是整个工程。
  • 生命周期 变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
  • ·局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
  • ·全局变量的生命周期是:整个程序的生命周期。

5.常量

(我将用我自己的理解通俗讲解如果大家觉得不准确可以自行百度,搜索最精确的解释)

  • 字面常量

就是一串数据

  • const 修饰的常变量

具有常量属性的变量

  • #define 定义的标识符常量

就是相当于一个数字赋予一个名字

  • 枚举常量

系统会初始化他的大小从1开始依次递增1,如果自定义一个大小后面没自定义的大小依旧按照递增1的规则往下

#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;
}


目录
相关文章
|
存储 C语言
小白初识c语言(超友好)!!!(二)
小白初识c语言(超友好)!!!(二)
67 0
|
1月前
|
C语言 C++
C语言 之 内存函数
C语言 之 内存函数
32 3
|
4天前
|
C语言
c语言调用的函数的声明
被调用的函数的声明: 一个函数调用另一个函数需具备的条件: 首先被调用的函数必须是已经存在的函数,即头文件中存在或已经定义过; 如果使用库函数,一般应该在本文件开头用#include命令将调用有关库函数时在所需要用到的信息“包含”到本文件中。.h文件是头文件所用的后缀。 如果使用用户自己定义的函数,而且该函数与使用它的函数在同一个文件中,一般还应该在主调函数中对被调用的函数做声明。 如果被调用的函数定义出现在主调函数之前可以不必声明。 如果已在所有函数定义之前,在函数的外部已做了函数声明,则在各个主调函数中不必多所调用的函数在做声明
19 6
|
24天前
|
存储 缓存 C语言
【c语言】简单的算术操作符、输入输出函数
本文介绍了C语言中的算术操作符、赋值操作符、单目操作符以及输入输出函数 `printf` 和 `scanf` 的基本用法。算术操作符包括加、减、乘、除和求余,其中除法和求余运算有特殊规则。赋值操作符用于给变量赋值,并支持复合赋值。单目操作符包括自增自减、正负号和强制类型转换。输入输出函数 `printf` 和 `scanf` 用于格式化输入和输出,支持多种占位符和格式控制。通过示例代码详细解释了这些操作符和函数的使用方法。
33 10
|
17天前
|
存储 算法 程序员
C语言:库函数
C语言的库函数是预定义的函数,用于执行常见的编程任务,如输入输出、字符串处理、数学运算等。使用库函数可以简化编程工作,提高开发效率。C标准库提供了丰富的函数,满足各种需求。
|
23天前
|
机器学习/深度学习 C语言
【c语言】一篇文章搞懂函数递归
本文详细介绍了函数递归的概念、思想及其限制条件,并通过求阶乘、打印整数每一位和求斐波那契数等实例,展示了递归的应用。递归的核心在于将大问题分解为小问题,但需注意递归可能导致效率低下和栈溢出的问题。文章最后总结了递归的优缺点,提醒读者在实际编程中合理使用递归。
53 7
|
23天前
|
存储 编译器 程序员
【c语言】函数
本文介绍了C语言中函数的基本概念,包括库函数和自定义函数的定义、使用及示例。库函数如`printf`和`scanf`,通过包含相应的头文件即可使用。自定义函数需指定返回类型、函数名、形式参数等。文中还探讨了函数的调用、形参与实参的区别、return语句的用法、函数嵌套调用、链式访问以及static关键字对变量和函数的影响,强调了static如何改变变量的生命周期和作用域,以及函数的可见性。
29 4
|
28天前
|
存储 编译器 C语言
C语言函数的定义与函数的声明的区别
C语言中,函数的定义包含函数的实现,即具体执行的代码块;而函数的声明仅描述函数的名称、返回类型和参数列表,用于告知编译器函数的存在,但不包含实现细节。声明通常放在头文件中,定义则在源文件中。
|
1月前
|
C语言
c语言回顾-函数递归(上)
c语言回顾-函数递归(上)
31 2
|
1月前
|
Java 编译器 C语言
【一步一步了解Java系列】:Java中的方法对标C语言中的函数
【一步一步了解Java系列】:Java中的方法对标C语言中的函数
21 3