首页 > 其他分享 >c语言从零基础开始学——01

c语言从零基础开始学——01

时间:2023-02-12 17:35:14浏览次数:28  
标签:01 return 语言 int 作用域 基础 include printf main

C语言

第一个程序

#include <stdio.h>
int main() //主函数-程序的入口,有且只能有1个main函数
{
printf("hello world\n"); //print function-打印函数
//这里完成任务
return 0; //返回 0
}

//int是整型的意思,main前面的int表示main函数调用返回一个整型值
//printf是库函数-C语言本身提供给我们使用的函数
//别人的要打招呼,用#include,包含一个叫stdio.h的文件,std-标准,standard input output
  • ctrl+F5执行

数据类型

char       //字符数据类型
short //短整型
int //整型
long //长整型
long long //更长的整型
float //单精度浮点数
double //双精度浮点数
  • 打印字符a
#include <stdio.h>
int main()
{
char ch = 'a'; //申请内存,ch=change(变量)
printf("%c\n",ch); //%c,--打印(字符格式的数据)
return 0;
}
  • 打印整型20
#include <stdio.h>
int main()
{
int age = 20;
printf("%d\n",age); //%d,--打印整型十进制数据
return 0;
}
//%f,--打印浮点数字-打小数
//%p,--以地址的形式打印
//%x,--打印16进制数字
//%s, --输出内存中的字符串,内存中存的是字符串所在的地址
  • 打印双精度浮点型
#include <stdio.h>
int main()
{
double d = 3.14;
printf("%lf\n",d); //也可以用f,但是lf最准确,表示打印双精度浮点数
return 0;
}

不同类型向内存申请的空间

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

  • 上面的1是一个字节
  • 什么是字节?
计算机中的单位
bit 比特位 //计算机是硬件--通电 1-正电,0-负电,比特位用来存放一个二进制位,只能存1或0
byte 字节 //一个字节是8个比特位
kb //1kb=1024byte
mb
gb
tb
pb
  • 比如上面那个short,代表两个字节,就是16的二进制比特位0000000000000000——1111111111111111
  • 三个比特位,有8种能放的可能,8=2的三次方,排列组合
  • 二进制举个例子:010=0x2的二次方+1x2的一次方+0×2的0次方
  • 例子
float weight = 95.6f;
或者
double weight = 95.6; //向内存申请四个字节,存放小数
  • c语言规定:sizeof(long)>=sizeof(int)

变量

  • 定义变量的方法
类型+变量名+赋一个值
int age = 150;
float weight = 45.5f;
char ch = ‘w';
  • 分类——局部变量和全局变量
#include <stdio.h>
int num2 = 20; //全局变量——定义在代码块({})之外的变量
int main()
{
int num1 = 10; //局部变量——定义在代码块({})内部
return 0;
}

//全局变量和局部变量可以同时存在,名字相同时输出局部变量的值
//建议全局和局部的名字不要相同,容易误会,产生bug
//局部变量只能在它自己的{}中被使用,放到全局里就不行了
  • 变量使用:相加程序
#include <stdio.h>
int main()
{
//计算两个数的和
int num1 = 0;
int num2 = 0;
int sum = 0;
//输入数据,使用输入函数scanf;
scanf_s("%d%d", &num1, &num2); //&——取地址符号,把第一个值放到第一个地址处,这里scanf不行
//c语言语法规定,变量要定义在当前代码块的最前面
sum = num1 + num2;
printf("sun = %d\n", sum);
return 0;
}
  • 变量的作用域
  • 作用域:这个变量哪里可以用,哪里就是作用域,比如num,作用域就是包含它的大括号(局部代码块内部)
  • 全局变量作用域是整个工程
  • 局部变量的作用域是变量所在的局部范围
#include <stdio.h>
int global = 2020;
int main()
{
printf("%d\n",global);
return 0;
}
  • 变量的生命周期
  • 定义:变量从创建到变量销毁的时间段
  • 局部变量的生命周期:进入作用域——离开作用域({})
  • 全局变量的生命周期:整个程序的生命周期

2.12下午很冷,在自习室终于看完鹏哥的第一节课了,很想继续学,加油!


标签:01,return,语言,int,作用域,基础,include,printf,main
From: https://blog.51cto.com/u_15963293/6052102

相关文章

  • C语言填空:比赛选择确定
    #include<stdio.h>//两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。//已抽签决定比赛名单,有人向队员打听比赛的名单。a说他不和x比,//c说他不和x、z比,请......
  • C语言填空:奇数分之一的和,直到小于1e-6
    #include<stdio.h>//求s=1+1/3+1/5+....之和,直到某一项的值小于10的-6次方时停止累加main(){floata=1,【1】,b,c;while(【2】){s=s+【3】......
  • Tomcat漏洞(CVE-2017-12615)复现
     漏洞原理:漏洞原理:Tomcat配置文件/conf/web.xml配置了可写(readonly=false),导致可以使用PUT方法上传任意文件,攻击者将精心构造的payload向服务器上传包含任意代码的JSP......
  • 6.4通过莫尔斯编码来看哈夫曼算法的基础
       哈夫曼算法是哈夫曼(D.A.Huffman)于1952年提出来的压缩算法。日本人比较常用的压缩软件LHA,使用的就是哈夫曼算法。   文本文件是由不同类型的字符组合而成的......
  • 01AI编译器后端优化介绍
    1、AI编译器架构 准备好用Caffe、Tensorflow等训练好的神经网络模型。神经网络模型转换成GraphIR,然后经过GraphOptimizer的一系列Pass优化,列如:图算融合、数据排布......
  • 【Vue day01】前端发展介绍 Vue的快速使用 插值语法 指令系统之文本指令、事件指令、
    目录前端发展介绍Vue框架入门M-V-VM思想组件化开发单页面应用Vue的快速使用前期准备快速使用对象与标签绑定查看Vue对象插值语法三目运算符指令系统之文本指令v-text和v-......
  • C语言学习:读写一行字符
    1#include<stdio.h>2#include<io_utils.h>3#include<errno.h>4#include<string.h>56voidReadFile1(){7FILE*file=fopen("CMakeLists.txt"......
  • C语言学习:复制文件
     1#include<stdio.h>2#include<io_utils.h>3#include<errno.h>4#include<string.h>56#defineCOPY_SUCCESS07#defineCOPY_ILLEGAL_ARGUMENT......
  • C语言填空:小球下落距离
    #include<stdio.h>//一个小球从100米高度自由下落,每次落地后反跳回原来高度的一半,再下落,//求它在第十次下落地时,共经过多少米,第十次反弹多高?main(){float【1......
  • 基础算法三
    单链表//head存储链表头,e[]存储节点的值,ne[]存储节点的next指针,idx表示当前用到了哪个节点inthead,e[N],ne[N],idx;//初始化voidinit(){head=-1;i......