变量的基本使用

news/2024/9/25 11:09:08

C语言里提供了一组工具,他们叫做标准函数;每个标准函数用来解决一个常见问题

不同标准函数名字不同,可以在程序里编写函数调用语句使用标准函数

printf标准函数可以用来把程序里的数字显示在终端窗口里

为了使用这个标准函数需要包含stdio.h头文件

可以在双引号里使用占位符(%+类型)把数字转移到双引号的后面

双引号后面的数字可以是一个计算公式,计算机先计算出公式的结果然后替换掉双引号里面的占位符

不同类型的数字和不同的占位符配合使用,整数类型数字应该和%d占位符配合使用

可以在一条语句里使用多个占位符,这个时候就应该在双引号后面提供多个数字,数字个数和占位符个数一样

程序里所有数字必须记录到内存里内存由大量的字节构成,每个字节可以用来记录一个数字每个字节有一个编号,这个编号叫做字节的地址,不同字节的地址不同所有字节的地址从0开始依次向上递增字节之间有前后顺序,地址小的字节在前,地址大的字节在后可以把几个相邻的字节合并成一个整体用来记录一个数字内存里用来记录一个数字的所有字节叫做一个存储区一个存储区只能记录一种类型的数字,存储区也有地址,存储区的地址是他所包含的字节中最前面那个字节的地址C语言程序里变量用来代表存储区,对变量的操作也就是对他所代表存储区的操作变量必须先声明然后才能使用,变量声明语句可以用来声明语句变量声明语句让计算机为程序分配存储区;可以在一条语句里声明多个同类型变量

程序中可以向变量里存放数字也可以从变量里获取数字

赋值语句可以向变量里存放数字;赋值语句里使用赋值操作符(=)

赋值操作符要求左边的内容必须可以代表存储区(这种内容叫左值);变量是最常见的左值赋值操作符右边的内容必须可以代表数字,赋值语句可以把赋值操作符右边的数字放到左边的存储区里可以在声明变量的时候立刻对变量进行赋值,这叫做变量的初始化C语言里所有变量都应该初始化

可以在程序里直接把变量当作数字使用,这就是从变量里获得数字的方法

变量名称既可以代表存储区也可以代表存储区里的数字,由环境决定如何判断一个变量到底代表存储区还是数字方法:将变量名称换为0,根据左边名称右边数字可以确定是做存储区还是数字存储区的地址也可以代表存储区,在变量名称前加上符号&就可以得到存储区的地址可以使用%p做占位符把地址数据显示在电脑屏幕上

程序中可以使用变量代表一个固定的数字

程序中可以使用变量代表一组数字(变量在不同的时候代表不同的数字)

作业:编写程序在屏幕上显示以下内容

5

54

543

5432

54321

双引号里和双引号后面不能出现数字

点击查看代码
#include<stdio.h>
int main(){int num=54321,base=10000,num1=10;printf("%d\n",num/base);base=base/num1;printf("%d\n",num/base);base=base/num1;printf("%d\n",num/base);base=base/num1;printf("%d\n",num/base);base=base/num1;printf("%d\n",num/base);return 0;
}

C语言字符类型

字符类型的名称是char字符类型里包含256个不同的字符数据('a','^等),每个字符数据可以用一个整数表示

字符数据和整数是可以互相替代的,ASCII码表里列出所有字符和整数之间的对应关系

ASCII码表里所有小写英文字母是连续排序的,‘a’对应的整数最小,‘z’对应的整数最大

所有的大写英文字母和阿拉伯数字字符也都符合这个规律

所有字符数据被分成两组每组包含128个,其中一组字符数据对应的整数在所有计算机里都一样,这些整数的范围从0到127另外一组字符数据对应的整数在不同的计算机里不一样,这些整数有可能从-128到-1也肯能从128到255‘\n’		换行‘\r’		回车' \ \ '	代表字符\'\ '    ‘   代表字符 ’' \ " '     代表字符 "短整数类型名称是short这个类型里包含65536个不同的整数,其中一半是非负数,另一半是负数。这些数字以0为中心向两边扩展长整数类型名称是long这个类型里包含2的32次方个不同的整数,其中一半是非负数,另一半是负数。这些数字以0为中心向两边扩展、整数类型名称是int

在我们计算机里整数类型和长整数类型完全一样

以上数据类型统一叫有符号类型

每个有符号类型对应一个无符号类型,无符号类型名称就是在对应有符号类型名称前加unsigned关键字
比如unsigned char,unsigned int 。
无符号类型所包含的数字个数对应有符号类型的个数一样,但是  不包含负数。 

整数相关数据类型所包含的数字范围互相重叠并且逐渐扩大

在不带小数点的数字后加u表示数字的类型是无符号整数类型的

C语言里使用浮点类型表示带小数点的数字,浮点类型分为单精度浮点类型和双精度浮点类型

双精度浮点类型可以记录更多小数点后面的数位

单精度浮点类型名称是float双精度浮点类型名称是double程序中带小数点的数字默认是双精度浮点类型的带小数点的数字后面加f表示数字的类型是单精度浮点类型(如:3.2f)

C语言里允许扩展新的数据类型

扩展出来新的数据类型叫复合数据类型

复合数据类型都需要编写语句先创建出来然后才能使用

C99规范里引入布尔类型

这个类型里只包含0和1两个整数,其中0表示假,1叫做真

真和假都叫做布尔值

C语言程序里任何整数都可以当作布尔值使用,0当作布尔值使用的时候是假,所有其他整数当布尔值使用的时候都是真

一般不需要再程序里使用布尔类型,直接把整数当布尔值使用就可以了

数据类型和占位符的对应关系

char和unsigned char	            %cshort  							%hdunsigned short 					%hulong						    %ldunsigned long				    %luint								%dunsigned int 					%ufloat							%f   or %gdouble							%lf  or  %lg%f和%lf在显示的时候会保留小数点后面无效的0,%g 和%lg不会保留

不同类型的存储区所包含的字节个数不同

sizeof关键字可以用来计算一个存储区包含的字节个数char和unsigned char						1个字节short和unsigned short				    2个字节long 和unsigned long				    4个字节int和unsigned int						4个字节float									4个字节double								    8个字节sizeof关键字后的小括号里对任何存储区内容的修改不会真正发生

eg:

int num=0;

sizeof(num=10);

printf("num=%d\n",num);

此时num=0

作业:

编写程序计算半径为5.2的圆的周长并把结果显示在屏幕上

2*3.14半径

半径应该记录在变量里

点击查看代码
#include<stdio.h>
int main(){float r=5.2f;printf("Cir=%f\n",2*r*3.14);return 0;
}

作业:

编程在屏幕上显示以下5行内容

54321

5432

543

54

5

每次显示一行,双引号里面和后面都不能有数字

点击查看代码
#include<stdio.h>
int main(){int num=54321,num1=10;printf("%d\n",num);num=num/num1;printf("%d\n",num);num=num/num1;printf("%d\n",num);num=num/num1;printf("%d\n",num);num=num/num1;printf("%d\n",num);num=num/num1;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/64519.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

CH585烧录

目前最新版本ISP工具还未更新至官网,旧版ISP工具还不包含CH585烧录选项。 可通过最新版本Mounriver Studio导出ISP工具, 除此之外,还需要更换下配置文件,右键Mounriver Studio打开文件所在位置,将名称为WCH55xISPDLL.dll的配置文件替换到该路径下:D:\MounRiver\MounRiver…

寄存器传值——函数剖析

寄存器传值导致的未定义行为寄存器传值——函数剖析 现象 实验环境:Ubuntu20,x86-64指令集 #include <stdio.h>int sum(int a, int b){return a+b; }int main() {int aa = sum(5,3);printf("%d, %d\n", 9);return 0; }编译器提示我们 printf()函数少一个参数…

查看exe启动命令和参数

wmic process where caption="qq.exe" get caption,commandline /value #qq.exe可以更换为任何正在运行的进程

Windows 11 version 23H2 中文版、英文版 (x64、ARM64) 下载 (updated Sep 2024)

Windows 11 version 23H2 中文版、英文版 (x64、ARM64) 下载 (updated Sep 2024)Windows 11 version 23H2 中文版、英文版 (x64、ARM64) 下载 (updated Sep 2024) Windows 11, version 23H2,企业版 arm64 x64 请访问原文链接:https://sysin.org/blog/windows-11/,查看最新版…

【YashanDB知识库】YAS-04110 invalid variant name

本文转自YashanDB官网,具体内容请见https://www.yashandb.com/newsinfo/7369202.html?templateId=1718516 【标题】错误码处理 【问题分类】查询语句报错 【关键字】YAS-04110 【问题描述】执行特定sql时,遇到相应报错 【问题原因分析】字段中含有保留字,应使用双引号包裹字…

章14——Hashtable

键和值为NULL时会抛出空指针异常。KEY重复且无NULL时同样会替换,和HashMap是一样的。按照2倍+1的规律去扩容与HASHMAP对比PROPERTIES,也是MAP接口的实现类,是Hashtable的子类 .properties 文件通常是用于数据库的配置文件,储存数据库的用户名密码等东西 详细可见博客园博客…

mac安装allure成功后pycharm虚拟环境allure不可用

mac安装allure成功pycharm虚拟环境cmd提示zsh: command not found: allure mac查看安装成功在虚拟环境查看失败确认虚拟环境变量 如果 Allure 仍然不可用,检查虚拟环境中的 PATH 环境变量是否包含了 Allure CLI 的路径。在虚拟环境中,你可以运行以下命令来查看 PATH: echo $…

如何删除 WPS 在图片文件属性中添加的“属性修改”选项卡

近期发现 WPS 2023 这一个非常恼人的特性,在图片文件的属性窗口里面乱加第三方选项卡。同事的电脑安装了这个版本,就让同事从注册表试了一下。还好金山他们藏的不是很深,借助 GPT 很快也就找到了。这里再用鄙人自己的虚拟机演示一遍。HKEY_CLASSES_ROOT\*\shellex\PropertyS…