一、进制

进位方法:逢几进一(也就是几进制)

举例:十进制 12  ;  二进制  0b(计算机前缀)  0b1011  ;  八进制  0   073  ;十六进制  0x  0xABCDEF

十进制(X)转其它进制(Y)方法:连除倒取余。 用X除以Y,将获得的余数倒着排序。

其他进制转转十进制:   多项式求和。   将多进制的数上的每一个数 的 (几-1)次方 相加得到的和。

一个八进制可以转换成3个二进制位;一个十六进制可以转换成4个二进制位。

八进制和十六进制存在的意义就是为了更加方便的表示二进制。

二、注释:单行注释(//)和多行注释(/* */)

注释的作用:注释是给程序员看的,解释和说明 代码的作用,程序的运行中不参与执行,相当于一个空格。
单行注释的内容,只能写在//的后面,而不能使用enter换行。
/*
 多行注释中可以使用enter
 多行注释中可以嵌套单行注释,但多行注释不能嵌套多行注释.
 //单行注释
 单行注释中可以出现多行注释,但是多行注释中不能出现enter.
 */ 
 
 
三、简单程序的一般形式
 #import <Foundation/Foundation.h>

 int main (int argc, const char *argv[]) {

    return ;
}

#import 引入系统框架;

<Foundation/Foundation.h> 系统提供的框架。 Foundation.h 系统的头文件。头文件相当于一个说明书,引入系统框架使用<>,引入自定义框架使用""。

int main (int argc, const char *argv[]) 是main函数,是程序的入口,任何程序执行必须有main函数,而且一个函数只能有一个main函数;
int 函数的返回数据类型; main 函数的名字; int argc, const char *argv[] 函数的参数。 return 0 代表main函数的返回值,返回0,代表这个main函数正常输出,其他数字则代表函数异常。 四、数据类型

C语言数据类型(

作用:为了合理利用内存空间,

规定要存储的数据在内存中所占

的空间大小)

基本数据类型 整型 short 2个字节 %hd
int 4个字节 %d
long 4/8个字节 %ld
浮点型 float(单精度) 4个字节 %f
double(双精度) 8个字节 %lf
字符型 char 1个字节

'c' ; '1':每个字符在

ASCII表中都代表一个整数

构造数据类型 数组、结构体  
指针数据类型 地址 字符串 "hello"; "恩"
空类型 void  
定义一个变量 :   数据类型    变量名    =    初始值;
int age(赋值运算符) 21;
变量 常量 变量命名规则 初始化的作用
常量:在程序的整个运行过程中值不能发生变化的量;
变量:程序的运行过程中值能发生改变的量,变量代表的是内存中的一块存储区域,存储区域的值能够发生改变.
使用变量的时候首先要考虑的是它在内存中所要的存放的数据类型的大小(也就是占多少字节).
如何使用变量:01.确定数据类型;02.确定变量的名字;03.初始化变量.
常量存在的意义就是给变量赋值
变量命名规则:1.只能由数字 字母 下划线以及$(美元符号)组成,并且数字不能开头;  2.不能与系统关键字相同,系统关键字一共32个;  3.不能使用重复的变量名(Redefinition of 'age',指重复定义变量名'age');  4.见名知意.
初始化的作用:目的是为了防止使用上次遗留在内存中的垃圾数,赋初始值
 
 
 
五、输出函数 <printf>
 float a = 3.14;
printf ("a = %.2f\n", a);
// %.nf表示输出小数点后n位数字

%md

①当m为负数时,左对齐。如果|m|>当前数字的位数,右侧补空格;相反则正常输出。

②当m为正数时,右对齐。如果|m|>当前数字的位数,左侧补空格;相反则正常输出。

补充:

  1.输出一个百分号“%”

printf("%%");

  2.输出字符所代表的数值

    printf("%d", 'A');
// 使用%d作为字符的占位符,输出的是这个数在ASCII中所代表的数值 printf("%c", 'A');
// 使用%c作为字符的占位符,输出的是这个字符本身。

六、运算符 复合运算符 表达式 语句

运算符:
++ 自增1的运算符;  --  自减1的运算符
  • 变量在++的前面,先使用这个变量,然后再对自身加1.a++
  • 变量在++的后面,先对自身加1,然后再使用这个变量.++a
  • 变量在--的前面,先使用这个变量,然后再对自身减1.a--
  • 变量在--的后面,先对自身减1,然后再使用这个变量.--a
复合运算符 += -= *= /= %=
 
表达式:变量,常量,运算符的组合就叫做表达式,单独的表达式活着单独的常量都是表达式.
判断一个式子到底是不是表达式,就看这个式子有没有返回值.
 
语句:程序中最小的执行单位,语句必须以分号(;)结尾。
 
 
七、输入函数  scanf()
     scanf("%d", &a);
// & 取地址符,可拿到变量在内存中的地址。
// scanf 中不能输入enter,会把输入的enter抵消掉
scanf("%d %d\n", &a, &b); scanf("%c", &c)
// 输入字符,前面不能有其他的scanf函数。
// getchar 清除缓存区域的字符;rewind(stdin) 清空缓存区域全部字符。

C阶段【01】 - C基础的更多相关文章

  1. 002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介

    002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介 学习Java的基础语法 Java是一门编程语言,学习的逻辑其实和现实世界的语言是一样的,需要了 ...

  2. 01: tornado基础篇

    目录:Tornado其他篇 01: tornado基础篇 02: tornado进阶篇 03: 自定义异步非阻塞tornado框架 04: 打开tornado源码剖析处理过程 目录: 1.1 Torn ...

  3. 后端 - Lession 01 PHP 基础

    目录 Lession 01 php 基础 1. php 基础 2. php 变量 3. php 单引号 和 双引号区别 4. 数据类型 5. 数据类型转换 6. 常量 7. 运算符 8. 为 fals ...

  4. Jam's balance HDU - 5616 (01背包基础题)

    Jim has a balance and N weights. (1≤N≤20) The balance can only tell whether things on different side ...

  5. 086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结

    086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结 本文知识点:面向对象基础(类和对象)总结 说明 ...

  6. 075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现

    075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现 本文知识点:综合案例-数组移位-主方法功能4的实现 说明:因为 ...

  7. 074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现

    074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现 本文知识点:综合案例-数组移位-主方法功能3的实现 说明:因为 ...

  8. 073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现

    073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现 本文知识点:综合案例-数组移位-主方法功能1和2的实现 说 ...

  9. 072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法

    072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法 本文知识点:综合案例-数组移位-在指定位置处插入数据方法 ...

  10. 071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法

    071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法 本文知识点:综合案例-数组移位-显示数组当中所有元素 ...

随机推荐

  1. CSS基础-插曲

    CSS学习 1:通过css来设置边框的颜色 我们可以通过border:10px solid red;来统一的设置颜色,但是我们有的时候需要每个边框的颜色不一样,我们就需要通过各自设置的方法来设置边框的 ...

  2. LCA---Tarjan算法

    本问题中Tarjan算法不需要设置栈和dfn,low标号,而是设置了并查集. 通过一次dfs遍历即可找出所有节点对的lca.将这样一次读取所有查询,计算一次后返回所有查询lca的算法称为离线算法 涉及 ...

  3. iOS阶段学习第15天笔记(NSDictionary与NSMutableDictionary 字典)

    iOS学习(OC语言)知识点整理 一.OC中的字典 1)字典:是一个容器对象,元素是以键-值对(key-value)形式存放的,key和value是任意类型的对象,key是唯一的,value可以重复 ...

  4. Nofuser - deobfuscator for Confuser

    google搜索了好久,最终找到这个工具,可直接使用. 虽然脱后有很多无用代码,但关键代码是还是很清晰的! ----------------------------NoFuser----------- ...

  5. 【Java每日一题】20161115

    package Nov2016; import java.io.Serializable; public class Ques1115 implements Serializable{ private ...

  6. 数据库SQL server规则的创建、查看、修改和规则的绑定与松绑、删除

    用CREATE RULE语句创建规则 创建雇佣日期规则 hire_date_rule CREATE RULE hire_date_rule AS @hire_date>='1980-01-01' ...

  7. Servlet与多线程与IO操作

    1.JVM内存模型相关概念 2.Java多线程并发深入理解 3.Servlet.设计模式.SpringMVC深入理解 4.Java基础遗漏点补充 数据库连接池:JDBC connection pool ...

  8. Tomcat性能调优方案

    一.操作系统调优 对于操作系统优化来说,是尽可能的增大可使用的内存容量.提高CPU的频率,保证文件系统的读写速率等.经过压力测试验证,在并发连接很多的情况下,CPU的处理能力越强,系统运行速度越快.. ...

  9. 更新整理本人所有博文中提供的代码与工具(Java,2013.10)

    为了更方便地管理博文中涉及的各种代码与工具资源,现在把这些资源迁移到 Google Code 中,有兴趣者可前往下载. Java 1.<高效 Java Web 应用开发框架 JessMA v3. ...

  10. spring mvc WebArgumentResolver不生效

    WebArgumentResolver: SPI for resolving custom arguments for a specific handler method parameter. Typ ...