C语言总结_语句运算符

曾无好事来相访,赖尔高文一起予。这篇文章主要讲述C语言总结_语句运算符相关的知识,希望能为你提供帮助。
当前文章复盘C语言的: 位运算运算符、基本运算符、数据类型、变量、for语句、while语句、goto语句、switch语句、运算符优先级强制转换等。
一、变量的命名

变量的命名:(13个字符) 1. A~Za~z 2. 0-9 3. _ 4. 说明:只能字母和数字开头。不能使用关键字。 //左值和右值 unsigned int a=123; //4个字节 const int b=456; char c=A; float d=123.456; //123.456 浮点数常量 char *p="123456"; //"123456"字符串常量

二、常量数据格式
#include "stdio.h"//常量声明: U和L 表示无符号长整型 #define ABC 123UL #define ABC 123ulint main(void)//0b101010; //二进制表示形式 //0x123; //表示十六进制 //123//表示十进制 int a=0x123; return 0;

三、运算符 3.1 逻辑非
#include "stdio.h"//常量声明: U和L 表示无符号长整型 #define ABC 123ULint main(void)int a=0; if(!a)printf("为真!\\n"); int data=https://www.songbingjia.com/android/1234; printf("%d\\n",!!data); //1 return 0;

3.2 位运算
& :全1为1,有0为0 |:全0为0,有1为1 ^:相同为0,不同为1 ~:1为0,0位1 > > :右移运算,低位溢出高位补0 < < :左移运算符,高位溢出,低位补0

位运算符使用较多的地方:
(1) 单片机里寄存器操作
(2) 协议加密解密、压缩算法、各种算法。
(3) 当做标志位使用
#include "stdio.h" //系统里需要有8个状态位,需要存放8个状态位--------当做寄存器使用 int main(void)unsigned char a=0; //8个位范围:0~7//如何将a第7位,置1呢? a|=1< < 7; //如何将a第2位,置1呢? a|=1< < 2; //将2的第3位和第4位置1 a|=0x3< < 3; //如何判断第7位是0还是1呢? if((a> > 7)& 0x1)printf("第7位的值为真!\\n"); elseprintf("第7位的值为假!\\n"); //bool sbit位定义 。 //bool a; sbit LED1=P1^1; return 0;

3.3 sizeof运算符
?Sizeof运算符 #include "stdio.h" int main(void)int a=1234; printf("%d\\n",sizeof(a)); //4int b=1; printf("%d\\n",sizeof(b)); //4 return 0;

3.4 三目运算符
#include "stdio.h" int main(void)/* int a; scanf("%d",& a); //取地址int a,b; a=a& b; //与int a,b; a=a*b; //乘号int *a; //指针类型 */int a; a=8> 5?123:456; //if(8> 5)a=123; elsea=456; printf("%d\\n",a); //123 return 0;

3.5 运算符的优先级和强制转换
#include "stdio.h" int main(void)int a=123+456-12*5/78; //高优先级先结合,再依次.... //如果优先级同级,执行顺序是从左边到右边。 //优先级最高:()小括号int b=123456789; char a=(char)b; //强制转换,只是取低8位 //欺骗编译器,告诉它,b是char类型。char a=8; int b=(int)a; //强制转换 printf("b=%d\\n",b); //还是字符8 return 0;

四、语句 4.1 for循环语句
#include "stdio.h" //系统里需要有8个状态位,需要存放8个状态位--------当做寄存器使用 int main(void)int a=123,b=456; int cnt=0; for(a=0; a< 5; a++)for(b=0; b< 5; b++)if(a==2)break; //跳出最近的一层循环cnt++; /* for(; ; )//死循环while(1)//死循环do//死循环 while(1); */ printf("cnt=%d\\n",cnt); //20 return 0;

4.2 while循环语句
?while循环语句 #include "stdio.h"//系统里需要有8个状态位,需要存放8个状态位--------当做寄存器使用 int main(void)int a=0,b=0; int cnt=0; while(a< 5)while(b< 5)if(a==2)break; b++; cnt++; b=0; a++; printf("cnt=%d\\n",cnt); //20 return 0;

4.3 goto语句
在平常的逻辑代码里面,不推荐使用goto语句。
常用的地方:错误处理,某某程序初始化失败,就释放资源等操作。
#include "stdio.h"//系统里需要有8个状态位,需要存放8个状态位--------当做寄存器使用 int main(void)int cnt=0; AA: //标签的定义,可以放在函数范围内的任意位置。(不能超出函数范围) printf("123\\n"); if(cnt==5)goto DATA; cnt++; goto AA; DATA: return 0; ?Goto语句常用在错误处理: #include "stdio.h"//goto语句在错误处理里使用 int main(void)if(LED_Init()< 0) //表示该函数返回值错误goto ERROR; if(KEY_Init()< 0) //表示该函数返回值错误goto ERROR; /*....*/ /*....*/ ERROR: //释放资源,结束程序 return 0;

4.4 Switch语句
Switch语句主要用在多分支选择结构----有很多种条件/情况。
实际代码里,常用于菜单选择:
#include "stdio.h" int main(void)switch(cmd) //cmd的值传入之后,与case后面的比较,成功之后再执行语句case 1: //case 后面值只能是常量,而且不能重复 break; //跳出最近的一层switch语句 case 2:/*......*/ break; case 3: break; /*......*/default: //类似于else printf("所有的条件都不成立!\\n"); return 0;

【C语言总结_语句运算符】示例:
#include "stdio.h"//投票系统,有3个待选举的人,A,B,C ,有10张票 int main(void)int i; int A=0,B=0,C=0; int data; for(i=0; i< 10; i++)printf("请投票(范围1~3):"); scanf("%d",& data); switch(data) //data的值传入之后,与case后面的比较,成功之后再执行语句case 1: //case 后面值只能是常量,而且不能重复 A++; break; //跳出最近的一层switch语句 case 2: B++; break; case 3: C++; break; // default: //类似于elseprintf("A=%d\\n",A); printf("B=%d\\n",B); printf("C=%d\\n",C); return 0;


    推荐阅读