1. 什么是变量

当一个数据的值需要经常改变或者不确定时,就应该用变量来表示。比如游戏积分。

2. 定义变量

1> 目的

任何变量在使用之前,必须先进行定义。

定义变量的目的是:在内存中分配一块存储空间给变量,方便以后存储数据。

如果定义了多个变量,就会为这多个变量分别分配不同的存储空间。

2> 格式

变量类型 变量名;

比如int num;

*变量名属于标识符

*变量类型

*不同类型的变量占用不同大小的存储空间。内存极其有限,分配适当的存储空间

*约束变量所存放的数据类型(方便运算)

3. 变量的使用

1> 赋值

往变量里面存点东西,就是赋值。赋值语句后带个分号;

a = 88;

注意:这里的等号=,并不是数学中的“相等”,而是C语言中的赋值运算符,作用是将右边的常量10赋值给左边的变量a

第一次赋值,可以称为“初始化”

初始化的两种形式

先定义,后初始化:int a; a = 10;

定义的同时进行初始化:int a = 10;

2> 修改

可以修改变量的值,多次赋值。每次赋值都会覆盖原来的值

a = 10;

a = 20;

变量a最后的值是20

使用printf输出一个或多个变量的值

int a = 10, c = 11;

printf("a=%d, c=%d", a, c);

double\float\char的输出,格式符的一些小技巧

 

double height = 1.55;

char blood = 'A';

printf("height=%.2f, 血型是%c", height, blood);

简单的加减操作

int a = 10 + 20;

*没有初始化时不要拿来使用(下面的写法是不建议的)

int score;

printf("score=%d", score);

3> 变量之间值的传递

可以将一个变量的值赋值给另一个变量

int a = 10;

int b = a;

连续赋值

a = b = 10;

4. 常见错误

1> 变量名相同 int a = 10; int a = 12;

2> 变量的作用域不对

变量的创建和释放过程

代码块作用域 { int a = 10; }

5.课堂代码

#include <stdio.h> //用printf就必须

int main()

{

//变量:只要有不确定的数据,就应该定义变量来保存

//要注意;经常忘打

int score = 100;

int time = 9;

//%d是一个格式符(占位符)只能输出整数

//\n用来换行

printf("分数是%d\n", score);

float height = 1.77f;

//%f用来输出小数,默认是6位小数

printf("身高是%f\n", height);

//加.2后输出是2位小数

printf("身高是%f.2\n", height);

char a = ‘A’;

//c%用来输出一个字符

printf("a的数值是%c\n", a);

return 0;

}

常用格式符:

1.%d或者%i 整数(int)

2.%f 小数(float,double)

3.%c 字符(char)

【学习笔记】【C语言】变量的更多相关文章

  1. Go语言学习笔记二: 变量

    Go语言学习笔记二: 变量 今天又学了一招如何查看go的版本的命令:go version.另外上一个笔记中的代码还可以使用go run hello.go来运行,只是这种方式不会生成exe文件. 定义变 ...

  2. [java学习笔记]java语言核心----面向对象之this关键字

    一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理:         代表的是当前对象.         this就是所在函数 ...

  3. Java学习笔记:语言基础

    Java学习笔记:语言基础 2014-1-31   最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...

  4. IOS学习笔记07---C语言函数-printf函数

    IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...

  5. IOS学习笔记06---C语言函数

    IOS学习笔记06---C语言函数 --------------------------------------------  qq交流群:创梦技术交流群:251572072              ...

  6. [java学习笔记]java语言核心----面向对象之构造函数

    1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用:                给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果 ...

  7. 学习笔记:Javascript 变量 包装对象

    学习笔记:Javascript 变量 包装对象 如下代码,可以输出字符的长度. var str = "Tony"; str.length; 这时再试试以下代码,返回是 undefi ...

  8. js学习笔记1(变量、作用域、内存)

    写在前面,舍弃叽叽歪歪,只做学习笔记,认真踏实. 学习书籍:javascript高级程序设计3版. 章节4.1 基本类型和引用类型 1.基本类型在内存中占据固定大小的空间,所以保存在栈内存中. 2.从 ...

  9. ios开发学习笔记001-C语言基础知识

    先来学习一下C语言基础知识,总结如下: 在xcode下编写代码. 1.编写代码 2.编译:cc –c 文件名.c 编译成功会生成一个 .o的目标文件 3.链接:把目标文件.o和系统自带的库合并在一起, ...

  10. [java学习笔记]java语言基础概述之标识符&关键字&注释&常量和变量

    一.标识符 在程序中自定义的一些名称 由26个英文字母的大小写,数字,_$组成 定义合法标识符的规则: 不能以数字开头 不能使用关键字 java严格区分大小写 注意:在起名字时,为了提高阅读性,必须得 ...

随机推荐

  1. 关于java.lang.IllegalArgumentException: View not attached to window manager 错误的分析

    今天遇到一个很奇特的问题,当用户设置了PIN码,在锁屏界面正常解锁PIN码后,进入Launcher时显示com.android.phone 已停止运行.一开始猜想会不会是解锁PIN码的时候处理导致了P ...

  2. [设计模式3]--工厂(Factory)模式

    原文出处:http://blog.csdn.net/lwbeyond/article/details/7528309 工厂模式属于创建型模式,大致可以分为三类,简单工厂模式.工厂方法模式.抽象工厂模式 ...

  3. C++对象内存模型2 (虚函数,虚指针,虚函数表)

    从例子入手,考察如下带有虚函数的类的对象内存模型: class A { public: virtual void vfunc1(); virtual void vfunc2(); void func1 ...

  4. jquery datatable[表格处理]

    最近在公司实习发现一个额功能强大的表格解决方案,了解了一下,先总结如下: 1.官网:http://www.datatables.net/ 2.需要特别注意:被dataTable处理的table对象,必 ...

  5. OC 实现的几个排序算法

    和在VC++6.0里相比 在OC里面实现 不算困难 可是我用惯了C/C++呢 快速排序,冒泡排序,直接插入排序和折半插入排序,希尔排序,堆排序,直接选择排序 /******************** ...

  6. mvc3.0 +linq 操作数据库中表的数据(ps:本人菜鸟刚学)

    1:添加控制器类文件HomeController.cs其代码如下: using System; using System.Collections.Generic; using System.Linq; ...

  7. DataGridView 多线程更新 数据 解决卡顿问题

    使用多线程更新DataGridView,防止页面卡顿和卡死的问题 private delegate void UpdateDataGridView(DataTable dt); private voi ...

  8. Windows配置端口转发

    windows命令行下用netsh实现端口转发 微软Windows的netsh是一个命令行脚本实用工具.使用netsh工具 ,可以查看或更改本地计算机或远程计算机的网络配置.不仅可以在本地计算机上运行 ...

  9. 最近在用placeholder ,是已有的,网上也有不少都是jq写的

    其实除了支持placeholder 的浏览器,其他用js 或jq实现的都不叫placeholder 效果,只能算上是获取焦点,或失去焦点时的一个placeholder 没有出生时就已经存在效果 很多人 ...

  10. Android 使用 HTTP 协议访问网络

    正在看<第一行代码>,记录一下使用 HTTP 协议访问网络的内容吧! 在Android发送Http请求有两种方式,HttpURLConnection和HttpClient. 1.使用Htt ...