- 常量
–生活中不变的量
C语言中的常量分为以下几种:
- 字面常量
- const修饰的常变量
- #define定义的标识符常量
- 枚举常量
1 #include <stdio.h> 2 int main() 3 { 4 //字面常量 5 3; 6 100; 7 3.14; 8 9 //const修饰的常变量 10 //const -常属性 11 //num是const修饰的常变量 12 const int num = 4; 13 printf("%d\n",num); 14 15 const int n = 10; //n是变量,但又有常属性,所以说n是一种常变量 16 //const不能表示常量,只能用来表达一个不能变的量 17 int arr[n] = 10; 18 }
1 //#define定义的标识符常量 2 #include <stdio.h> 3 #define MAX 10 4 5 int main() 6 { 7 int arr[MAX] = {0}; 8 printf("%d\n",MAX); 9 return 0; 10 }
1 //枚举常量 -一一列举 2 //枚举关键字 -enum 3 4 #include <stdio.h> 5 6 enum Sex 7 { 8 MALE, 9 FEMALE, 10 SECRET 11 }; 12 //MALE,FEMALE,SECRET -枚举常量 13 14 int main() 15 { 16 enum Sex s = MALE; 17 printf("%d\n",MALE); //0 18 printf("%d\n",FEMALE); //1 19 printf("%d\n",SECRET); //2 20 return 0; 21 }
1 #include <stdio.h> 2 3 enum Color 4 { 5 RED, 6 BLUE, 7 YELLOW 8 }; 9 10 int main() 11 { 12 enum Color color =BLUE; 13 color = YELLOW; 14 15 return 0; 16 17 }
- 字符串
–由双引号引起来的一串字符称为字符串
字符串的结束标志是一个’\0’的转义字符,在计算字符串长度的时候‘\0’是结束标志,不算作字符串内容。
#include <stdio.h> int main() { //数据在计算机上存储的时候,存储的是二进制 //a -97 ASCII码值 //A - 65 ASCII 编码 “abcdef”; "hello bit"; ""; //空字符串 char arr1[] = "abc";//数组 //“abc” --‘a’ 'b' 'c' '\0' --字符串的结束标志 char arr2[] = {'a','b','c'}; printf("%s\n",arr1); //%s -打印字符串 printf("%s\n",arr2); return 0; }
#include <stdio.h> int main() { char arr1[] = "abc"; char arr2[] = {'a','b','c'}; printf("%d\n",strlen(arr1)); //strlen -string length --计算字符串长度 printf("%d\n",strlen(arr2)); return 0; }
- 转义字符
–转变原来的意思
- \? –在书写连续多个问号时使用,防止他们被解析成三字母词 ??+ 一个其他字符,比如说:) –>三字母词
- \’ –用于表示字符常量’
- \” –用于表示一个字符串内部的双引号
- \\ –用于表示一个反斜杠,防止它被解释为一个转义序列符
- \a –警告字符,蜂鸣
- \b -退格符
- \f –进纸符
- \n –换行
- \r –回车
- \t –水平制表符
- \v –垂直制表符
- \ddd –ddd表示1~3个八进制的数字。如:\130X
- \xdd –dd表示2个十六进制数字。如:\x30 0
// \? #include <stdio.h> int main() { printf(“(are you ok\?\?)\n”); return 0; }
// \\ \t #include <stdio.h> int main() { printf(“c:\\test\\32\\test.c”); //\t -水平制表符 return 0; }
// \' #include <stdio.h> int main() { printf(“%c\n”,'\''); return 0; }
// \" #include <stdio.h> int main() { printf(“%s\n”,"\""); return 0; }
// \ddd #include <stdio.h> #include <string.h> int main() { printf(“(%d\n”,strlen("c:\test\32\test.c")); //\32 --32是2个八进制数字 //32作为八进制代表的那个十进制数字,作为ASCII码值,对应的字符 //八进制32 -->十进制26 ——> 作为ASCII码值代表的字符 return 0; }
// \xdd #include <stdio.h> int main() { printf(“(%c\n”,'\x61'); return 0; }
- ASCII码
48 -0
49 -1
50 -2
51 -3
52 -4
53 -5
54 -6
55 -7
56 -8
57 -9
65 -A 97 -a
66 -B 98 -b
67 -C 99 -c
68 -D 100 -d
- 注释
注释有两种风格:
- C语言风格的注释 /* xxxxx */ ,缺陷:不能嵌套注释
- c++风格的注释 //xxxxxx 可以注释一行也可以注释多行
- 选择语句
if语句
#include <stdio.h> int main() { int input = 0; printf("加入比特\n"); printf("你要好好学习吗?(1/0):>"); scanf("%d", &input); if (input == 1) printf("好offer\n"); else printf("卖红薯\n"); return 0; }
- 循环语句(while/for/do …while)
while循环
#include <stdio.h> int main() { int line = 0; printf("加入比特\n"); while (line < 20000) { printf("敲一行代码:%d\n",line); line++; } if(line>=20000) printf("好offer\n"); return 0; }
- 函数
- 自定义函数
- 库函数
#include<stdio.h> int Add(int x, int y) { int z = x + y; return z; } int main() { int num1 = 10; int num2 = 20; int sum = 0; int a = 100; int b = 200; //sum = num1 + num2; sum = Add(num1, num2); //sum = a + b; sum = Add(a, b); printf("sum = %d\n", sum); return 0; }
- 数组
#include <stdio.h> int main() { int arr[10] = {1,2,3,4,5,6,7,8,9,10}; //定义一个存放10个整型数字的数组 int i = 0; while (i < 10) { printf("%d ", arr[i]); i++; } printf("%d\n", arr[4]); //用下标的方式访问元素 return 0; }
arr
1 2 3 4 5 6 7 8 9
下标0 1 2 3 4 5 6 7 8
下标默认是从0开始的
- 操作符
- 算术操作符
#include<stdio.h> int main() { int a = 5 % 2; //取模 printf("%d\n", a); return 0; }
- 移位操作符 >> <<
int main() { //移位(二进制位)操作符 //<<左移 //>>右移 int a = 1; //整型1占四个字节 -32个bit位 //00000000000000000000000000000001 int b = a << 2; //00000000000000000000000000000100 //左移 左边丢弃,右边补零 //右移 右边丢弃,左边补零 printf("%d\n", b); printf("%d\n", a); return 0; }
- 位操作符 & | ^
int main() { //(二进制位)位操作符 //& 按位与 //| 按位或 //^ 按位异或 int a = 3; int b = 5; int c = a & b; //0011 //0101 //a&b = 0001 int c = a | b; //a |b = 0111; int c = a ^ b; //不是次方,是异或 //异或的计算规律:对应的二进制位相同则为0,相异则为1 a ^ b = 0110 printf("%d\n", c); return 0; }
- 复合运算符 (=,+=,-=,*=,/=,&=,^=,|=,>>=,<<=)
#include <stdio.h> int main() { int a = 10; a = 20; //= 赋值 ==判断相等 a = a + 10;//a += 10; a = a - 20;//a -= 20; a = a & 2;//a &= 2; return 0; }
- 单目操作符 !逻辑反操作符 -负值 +正值
//双目操作符
//三木操作符
#include <stdio.h> int main() { int a = 10; int b = 20; a + b;//+ 双目操作符 有两个操作数 //! 逻辑反操作符 C语言中表示真假 0 -假 非0 -真 int a = 0; printf("%d\n", a); printf("%d\n", !a); //- 负值 int a = -2; //- 单目操作符 只有一个操作数 int b = -a; int c = +3; //+正号都会省略 //sizeof(操作数的类型长度(以字节为单位)) int a = 10; //sizeof 计算的是变量/类型所占空间的大小,单位是字节 printf("%d\n", sizeof(a)); printf("%d\n", sizeof(int)); printf("%d\n", sizeof a);*/ int arr[10] = { 0 }; //10个整型元素的数组 int sz = 0; //10*sizeof(int) = 40 printf("%d\n", sizeof(arr)); //计算数组的元素个数 //个数 = 数组总大小/每个元素的大小 sz = sizeof(arr) / sizeof(arr[0]); printf("sz = %d\n", sz); return 0; }
原文地址:http://www.cnblogs.com/yxl6/p/16846157.html
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请务用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员!
8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性