c语言第一课---------它来了,它来了,带着薪资走来了

简介: c语言第一课---------它来了,它来了,带着薪资走来了

作者的建议

下面我们简单介绍学好C语言的步骤:

=>1.学会敲代码,因为所有的程序员都是从敲代码开始的,没人会不敲代码而变优秀,除非你在写小说,或者你在做白日梦

=>2.当我们学会敲代码还不行,因为我们是人,是人就会忘记,没有人会把所有的事情记住,除非你是机器人,为了我们能巩固自己的知识,我们要学会做笔记,还要总结,我推荐:

印象笔记(有道云笔记)-笔记可以检索,笔记丢不了,随时随地方便复习。

xmind-思维导图,整理一门课程学完后的框架

=>3.学会挤时间学习,当我们要比别人优秀,就要比别人更加努力,

=>4.遇到问题我学会先自己解决,可以上百度或者b站等平台寻找答案,因为我们身处在互联网时代

=>5.养成写博客和上传代码到gitee的好习惯,这两个会让你在找工作很吃香

以上就是我的建议,如果小可爱们有自己的节奏可以按照自己的来,好用不一定好,适合才是最好的

啥是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 等。

我对c语言的理解:c语言就是我们和计算机讲的话,因为计算机存储的是二进制(计算机只认识0和1),我们通过使用c语言告诉计算机怎么做,下面的图可以让我们更进一步了解语言适用的领域

37cb20755b0e41e1b7d733eccde8dae9.png

我们写出来的C语言代码怎样运行的:

一个简单的C语言代码

代码:

#include<stdio.h>
int main()
{
  printf("我的C语言之旅开始了");
  return 0;
}

结果:

我来讲解一下:

#include<stdio.h> 导入头文件stdio.h

int :整形

int main()主函数,必须有,有且仅有一个,作为程序运行的入口

其实main()的写法还要一些,如果想了解可以进入到我的gitee里面获取

printf()  stdio.h里的函数, 打印输出的库函数

return返回 ;返回的类型与int main()的int 对应

其他的数据类型:

注意 :C语言没有字符串关键字

浮点数就是小数的意思

float的小数位比double的少

2:整数

'2':字符2

我们试试一下这些数据类型的空间大小:

代码如下:

#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));
  return 0;
}

结果如下:

到这里一些小可爱就会有疑问,为啥long的字节和int一样呢?

因为:

sizeof(char)<sizeof(short)<sizeof(int)<=sizeof(long)<=sizeof(long long)

变量和常常量

以上的数据类型都是为了创建变量和常量而准备的

下面我写一些变量:

#include<stdio.h>
int main()
{
  int age = 10;
  char name = 'w';
  float weight = 45.5f;//加个f变成float类型
  float height = 45.5;//会默认为double类型的变量
  printf("%f\n", weight);
  printf("%f\n", height);
  return 0;
}

45.5;默认为double类型

45.5f;默认为float类型

double类型的数据的小数位比float多

全局变量和局部变量

代码如下:

#include<stdio.h>
//全局变量
//当局部和全局变量同名时,本质上他们互不干扰,局部变量会优先
//当一个变量定义在一个函数外,这个变量对这个函数来说就是全局变量
int a = 0;
int main()
{
  //局部变量
  int a = 10; 
  printf("%d", a);
  return 0;
}

在我看来,全局变量是对于函数来说的,当一个变量定义在一个函数之外,那这个变量对这个函数来说就是全局变量,定义在函数之内的就叫局部变量

那我们就来做一下练习:

输入两个整数,打印两数之和:

代码:

#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", sum);
  return 0;
}

结果如下:

scanf()库函数---------输入函数

&a:取a的地址

&b:取b的地址

总结:

这次就简单的介绍c语言的变量和常用的数据类型,后续还会继续介绍C语言的其他

相关文章
|
网络协议 Unix Shell
FreeBSD的特点是什么?如何使用?
【10月更文挑战第29天】FreeBSD的特点是什么?如何使用?
465 2
|
机器学习/深度学习 人工智能 PyTorch
|
4月前
|
缓存 监控 算法
唯品会item_search - 按关键字搜索 VIP 商品接口深度分析及 Python 实现
唯品会item_search接口支持通过关键词、分类、价格等条件检索商品,广泛应用于电商数据分析、竞品监控与市场调研。结合Python可实现搜索、分析、可视化及数据导出,助力精准决策。
|
4月前
|
人工智能 数据可视化 前端开发
AI Ping:精准可靠的大模型服务性能评测平台
AI Ping是清华系团队推出的“大模型服务评测平台”,被誉为“AI界的大众点评”。汇聚230+模型服务,7×24小时监测性能数据,以吞吐量、延迟等硬指标助力开发者科学选型。界面简洁,数据可视化强,支持多模型对比,横向对标国内外主流平台,为AI应用落地提供权威参考。
973 3
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
497 3
|
6月前
|
数据安全/隐私保护 Python
微信批量导出群成员群昵称工具,导出WXID微信号信息,微信群成员导出脚本插件
使用itchat库实现微信登录和群成员信息获取支持获取群成员的昵称
ly~
|
存储 安全 生物认证
如何防止密码重用?
本文介绍了防止密码重用的综合措施,包括用户教育与意识提升、技术手段支持和系统设计与策略引导。通过定期的安全培训、安全提示与宣传,增强用户的安全意识;推荐使用密码管理器和账户关联检测技术,帮助用户管理复杂密码;实施多因素身份验证和密码强度检查,确保系统的安全性。
ly~
513 5
|
存储 SDN 数据中心
|
运维 监控 安全
网络安全基础:深入理解防火墙与入侵检测系统
【6月更文挑战第27天】本文探讨了防火墙和入侵检测系统(IDS)在网络安全中的核心作用。防火墙执行访问控制和数据包过滤,隔离内外网络,但可能无法应对所有威胁。IDS则实时监控网络,通过异常和误用检测发现潜在威胁,提供第二道防线。两者的协同工作增强了防御能力,降低了误报,实现了快速响应,共同构建全面的网络安全防护。理解和有效部署这两者对于保障信息安全至关重要。
|
机器学习/深度学习 算法 网络架构
**深度学习中的梯度消失与爆炸影响模型训练。梯度消失导致输入层参数更新缓慢,梯度爆炸使训练不稳。
【6月更文挑战第28天】**深度学习中的梯度消失与爆炸影响模型训练。梯度消失导致输入层参数更新缓慢,梯度爆炸使训练不稳。解决办法包括:换激活函数(如ReLU)、权重初始化、残差连接、批量归一化(BN)来对抗消失;梯度裁剪、权重约束、RMSProp或Adam优化器来防止爆炸。这些策略提升网络学习能力和收敛性。**
282 0