★零基础C语言入门★
文章平均质量分 54
云端轻尘
这个作者很懒,什么都没留下…
展开
-
补.从零开始学习C语言--运算符补充(自增/自减、三目、逗号)
自增/自减 运算符 功能:操作对象自增或自减1;(自减和自增用法一致,这里用自增的用法来说明) 分类:前自增:++i后自增:i++ 前/后 自增的异同相同:最终i的值都加1;不同:后自增整体表达式的值是i加1前的值; 前自增整体表达式的值是i加1后的值;举例说明:k = ++i; 是原创 2013-06-20 13:20:37 · 886 阅读 · 0 评论 -
17.从零开始学习C语言--多级指针
即指向一个指针变量所在内存单元的指针,简单说就是指向指针变量的指针;那么知道int型的指针类型是int*,那么指向int*型的指针类型是int**,以此类推;原创 2013-08-15 18:54:41 · 514 阅读 · 0 评论 -
补.从零开始学习C语言--跨函数使用内存
简单说,如果在函数中静态分配内存,那么函数调用完毕后,该内存会被释放,虽然还能够访问到这个内存,但是这块内存随时有可能被分配给本程序其它变量,这块内存还属于本程序的栈空间,所以如果要跨函数使用内存,要用动态分配的malloc。原创 2013-08-15 18:57:25 · 660 阅读 · 0 评论 -
19.从零开始学习C语言--枚举
什么是枚举?把一个事件所有可能一一列举出来,变量只限于列举出来的范围内。怎么使用枚举?enum weekday{sun, mon, tue, wed, thu, fir, sat};定义一个枚举类型,enum weekday,然后定义变量为该枚举类型:enum weekday day;也可以直接定义枚举变量,如:enum weekday{sun, mon, tue, wed,原创 2013-08-15 20:08:48 · 975 阅读 · 0 评论 -
20.从零开始学习C语言--补码
所有整数在计算机中都是以补码来存储的,首位0,表示正数,首位1,表示负数什么是补码?1、正整数的补码是基本身的二进制数2、负整数的补码是:先求该负整数相对应的正整数的二进制代码,然后全部取反,末尾加1,不够位数时,左边全部补1。不哆位数的解释:如要存储int型的整数,一般是4个字节大小,那32位二进制,如果一串负整数对应二进制码不够32位,则左边全部补1。已经补码求原数?原创 2013-08-15 20:23:48 · 829 阅读 · 0 评论 -
21.从零开始学习C语言--算法
通俗定义:解决问题的方法和思路狭义定义:对存储数据的操作,对不同的存储结构,要完成某一功能执行的操作是不一样的,比如:对数组和链表的遍历的操作是不一样的;这说明算法是依附数据结构的,不同的存储结构所执行的算法是不一样的。广义定义:广义的算法也叫泛型,无论数据是如何存储的,对该数据的操作都是一样的,如遍历数组和链表,都是通过指针来找到内存单元,再把数据进行输出。原创 2013-08-15 20:31:22 · 614 阅读 · 0 评论 -
16.从零开始学习C语言--动态内存分配
数组的缺陷:1、数组长度必须事先定义,只能为常整数,定义后无法更改;2、数组占用内存,无法手动释放,直到数组所在函数执行完毕;3、函数内的数组,一旦函数执行完毕后,则不能在其它函数中使用,即数组不能跨函数使用;其实,数组所存在的问题就是静态内存的问题,通过动态分配数组可以很好的解决上述问题。malloc函数:函数名:malloc头文件:malloc.h功能:原创 2013-08-15 18:50:35 · 567 阅读 · 0 评论 -
22.从零开始学习C语言--链表
专业术语:首节点,存放第一个有效数据的节点尾节点,存放最后一个有效数据的节点头节点,首节点前一个节点,并不存放有效数据,只存放指向首节点的内存单元地址头指针,存放指向头节点内存单元的指针变量每个节点都存放两部分内容:有效数据、下一个节点的内存地址头节点只存放首节点的内存地址,不存放其他有效数据,尾节点存放的内存地址为NULL,即不指向其他节点。更多的原创 2013-08-15 20:59:14 · 706 阅读 · 0 评论 -
23.从零开始学习C语言--位运算符
& 按位与:同汇编中的and命令一样,是对数据的二进制形式按位进行与运算,1&1=>1、1&0=>0、0&0=>0; | 按位或:同汇编中的or命令,对数据的二进制形式按位进行或运算,1|1=>1、1|0=>1、0|0=>0;&可以把操作对象相应位设为0,5&10111111,将第六位设为0;|可以把操作对象相应位设为1,5&01000000,将第六位设为1.~按位取反:将操作对象原创 2013-08-15 21:17:39 · 640 阅读 · 0 评论 -
补.从零开始学习C语言--C语言补充_goto语句
goto跳转语句,无条件跳转,格式: goto 标签地址;一般会配合if语句使用 例子:#include #include int main(void) //main是程序入口 { int num; printf("请输入彩票号码:"); scanf("%d",&num); if (num==28) {原创 2013-10-01 18:41:26 · 652 阅读 · 0 评论 -
补.从零开始学习C语言--C风格字符串
C语言中,没有string这种类型,C中字符串是被当做一种特殊的数组来处理的,一个以0结尾的字符数组:chars[5]="abcd"; //字符串以"\0"结尾 ,注意这里数组的长度是5,而不是4!"\0"表示0 是一个转义字符 例子:chars1[38]="www.yjxsoft"; char s2[]=".com"; 请编写一段代码,把字符串s2追加到s1后边原创 2013-10-01 18:33:06 · 981 阅读 · 0 评论 -
补.从零开始学习C语言--获取时间函数
取当前系统时间要用到两个函数,这两个函数包含在头文件time.h中 一、函数:time 函数time()返回的是从格林威治时间1970年1月1日0点0分0秒到现在的秒数用法: time_t time( time_t *timer ); 二、函数:localtime 功能: 把从1970-1-1零点零分到当前时间系统所偏移的秒数时间转换为日历时间原创 2013-10-01 18:42:58 · 706 阅读 · 0 评论 -
15.从零开始学习C语言--指针和数组
一维数组数组名的含义:一维数组名是个指针常量,它存放的是一维数组第一个元素的内存地址。下标和指针的关系:如果有个数组a[5],a[i]就是对数组下标,那一维数组名是个指针常量,那么:int a[5];int *p;p=a;这里就是把a赋值给p,然后*(p+i) == a[i] == p[i];总结:如果p是个指针变量,则p[i]永远等价于*(p+i)。原创 2013-08-15 17:49:55 · 433 阅读 · 0 评论 -
14.从零开始学习C语言--指针
指针是C语言的灵魂。能够表示一些复杂的数据结构,快速传递数据,减少内存的耗用,使函数能返回多个返回值,能直接访问硬件,能够方便的处理字符串,是理解面向对象语言中引用的基础。指针的定义:数据类型 *指针名,如 int *p;内存地址:内存被逻辑上划分为若干个内存单元(以1byte为单位),从0开始编号,内存地址指的就是内存单元的编号(十六进制)。指针:指针原创 2013-08-15 13:38:21 · 582 阅读 · 0 评论 -
18.从零开始学习C语言--结构体
为什么需要结构体?为了表示一些复杂的事物,而普通的基本类型无法满足实际需求,如存储全校所有学生的性别,年龄,成绩,班级。。。。。。什么叫结构体?把一些基本类型组合在一起形成的一个新的复合数据类型。如何定义一个结构体(三种)?struct Student{ int avg; float scorr;}struct Student{ int avg;原创 2013-08-15 19:09:48 · 639 阅读 · 0 评论 -
13.从零开始学习C语言--函数
函数存在价值避免同样功能的代码被反复编写;面向过程,模块化编程思想,具有特定独立功能的代码块单独成“模块”,能够接收数据,对数据进行处理,并将结果返回(当然可以不接收数据也不返回);函数是一种工具,为了能够解决大量类似问题而设计的;C语言的基本单位是函数,C++是类。函数的定义格式:函数返回类型 + 函数名 (形参表)原创 2013-07-29 17:00:05 · 660 阅读 · 0 评论 -
C/C++ 日常小积累
1. 控制浮点型数据输出的小数位:%.3f如:printf("%.2f", 2.3333);输出结果是:2.332.输出整型数据时,在控制字符前加 -x,能把光标自输出位置起向后移x位,一般用在对齐输出时# include int main(void){ int a[3][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10,原创 2013-06-28 02:34:27 · 608 阅读 · 0 评论 -
9.从零开始学习C语言--do...while循环语句
do...while循环1.基本格式do{ 语句A;} while (表达式)2.代码执行顺序执行语句A,再判断表达式是否成立,成立则继续执行A,不成立则跳出循环。3.和while以及for的区别do...while和while以及for不能想到转换从执行流程上可以看到:while以及for是先进行判断再开始循环;do...whil原创 2013-06-20 13:58:48 · 1014 阅读 · 0 评论 -
补.从零开始学习C语言--scanf的%c前为什么加空格
#include int main (void) { int i ; char ch ; scanf("%d",&i) ; scanf(" %c",&ch) ; //这行的%C前有个空格 printf("i = %d\nch = %c\n", i, ch) ; /* 输入100 y 后的输出结果: i = 100 ch = y */ return 0 ;转载 2013-06-20 14:09:48 · 9067 阅读 · 0 评论 -
5.从零开始学习C语言--C语言运算符和流程控制
运算符算术运算符+ - * /(除) %(取模即取余数)关系运算符> >= (不等于) ==(等于)逻辑运算符!(非) &&(并且) ||(或)赋值运算符= += *= /= -=优先级别算术>关系>逻辑>原创 2013-06-20 13:17:34 · 988 阅读 · 0 评论 -
8.从零开始学习C语言--while循环语句
while循环1.基本格式while (表达式) 语句A;2.代码执行顺序表达式成立,则执行语句A,执行完毕后再次判断表达式是否成立,成立则继续执行语句A,如此循环,直到表达式不成立跳出循环。3.while循环和for循环的相互转换while循环可以和for循环想到转换:for (1; 2; 3) 语句A;转换成whil原创 2013-06-20 13:57:08 · 1100 阅读 · 0 评论 -
1.从零开始学习C语言--C语言概述
计算机编程语言发展过程:机器语言->汇编语言->高级语言->面向过程(C) / 面向对象(C++ java C#); C语言的特点:优点:代码量小、速度快、功能强大所以操作系统基本上都是用C语言写的:windows 内核C语言 外核C++语言、unix 纯C语言、linux 纯C语言缺点:危险性高、开发周期长、可移植性不强C语言对一些原创 2013-06-20 13:08:31 · 1043 阅读 · 0 评论 -
3.从零开始学习C语言--常量及数据的存储
常量整数常量十进制传统的写法:0,1,2十六进制前面加数字0和字母x:0x3FFF,0X3FFF八进制前面加数字0:0457浮点常量传统的写法float x = 3.12;科学计数法float x = 312e-2;原创 2013-06-20 13:11:23 · 770 阅读 · 0 评论 -
6.从零开始学习C语言--if判断语句
选择执行(判断语句)C语言中,选择执行语句有两种:if和switch主要讲讲if语句 if最简单的用法:格式:if(表达式) 语句;功能:表达式为真,则执行语句;表达式为假,则跳过语句执行程序的下面的代码。---------------------------------------if的控原创 2013-06-20 13:18:47 · 3367 阅读 · 0 评论 -
7.从零开始学习C语言--for循环语句
什么是循环 定义:在一定条件下,某些代码被重复的执行,直到不满足条件。为什么需要循环为了方便实现某种需要重复操作的功能,如计算 1+2+3+4+5+....+99+100 的和。分类:for循环while循环do....while...循环 for循环1.基本格式for (初始化变量;判断;执行语句) 语句A;2.代码执行顺序for (原创 2013-06-20 13:19:38 · 782 阅读 · 0 评论 -
10.从零开始学习C语言--switch判断语句
switch选择执行格式:switch (表达式){ case 常量表达式1:语句1; case 常量表达式2:语句2; ... case 常量表达式n:语句n; default:语句n+1;}1.case后的常量表达式只能为:枚举常量数值常量字符常量常变量宏名原创 2013-06-20 17:48:28 · 1027 阅读 · 0 评论 -
12.从零开始学习C语言--数组
数组1.数组的作用a) 为了解决大量同类型数据的存储和使用,如要统计全校同学的成绩b) 为了模拟现实问题(有点类似汇编的寻址...),如一个班级根据多少排多少列找到某一同学:a[i][j]2.数组的缺陷a) 长度固定,为便利b) 编程语言对原始数组提供的操作支持太少,像排序、倒置、查找需要自己编写代码一维数组1.一原创 2013-06-21 21:49:12 · 651 阅读 · 0 评论 -
4.从零开始学习C语言--C语言的输入(scanf)与输出(printf)
C语言的输入与输出:输出printf()将变量的内容输出在显示器上输入scanf()通过键盘将数据输入到变量中 printf()四种用法: printf(“字符串”) printf(“输出控制符”,输出参数) printf(“输出控制符1、2、3…”,输出参数1、2、3…)原创 2013-06-20 13:15:36 · 1297 阅读 · 0 评论 -
补.从零开始学习C语言--强制转换和浮点型数据的缺陷
强制转换格式:(数据类型)(表达式)功能:把表达式的值强制转换成前面括号里标明的数据类型举例:(int)(4.5+2.2) à结果为6(float)(5) à结果为5.000000注意:如果要求1/2的结果,不能写成(float)(1/2),因为这样是先计算(1/2)的值,再进行强制转换,而(1/2)的值肯定为Int型其结果为0,再进原创 2013-06-20 13:13:41 · 1179 阅读 · 0 评论 -
2.从零开始学习C语言--C语言数据类型、变量以及进制转换
基本类型 含义类型储存空间整数整型int4byte短整型short int2byte长整型long int8byte浮点数单精度浮点数float原创 2013-06-20 13:09:45 · 828 阅读 · 0 评论 -
24.从零开始学习C语言--二进制全部为0的意义
1、数值02、字符串结束标记符‘\0’3、NULL指针NULL指针表示的是零号内存单元,计算机规定,以0为编号的内存单元不可读写!常在指针初始化时这么用,或者释放动态内存时,如:fee(p);p=NULL;原创 2013-08-15 21:20:53 · 912 阅读 · 0 评论