C语言笔记(二)


运算符(操作符)和表达式

表达式:由操作符和运算符组成的序列

操作数:常量&变量,操作数是运算符的操作对象。

     ++                     --

操作数加一   操作数减一

i++ i--  先使用变量当前的值,然后进行自增、自减运算

++i --i  先进行自增、自减运算,然后再使用增减后的新值

	int i = 5;
	int b = i++;  //b先取i的值5,执行完表达式后i的值为6
	printf("b = %d\n",b);

	int c = i;	
	printf("c = %d\n",c);

	int sum = ++i + (b++);//执行完表达式后,i为7,b++为5;注意这里是指b++的值
	printf("sum = %d\n",sum);


	 int i = 5;
         int b = i++;
         printf("b= %d\n",b);
 
         intc = i;
         printf("c= %d\n",c);
 
         intsum = ++i + (b++);//执行完表达式后,i为7,b为6;注意这里是指b的值
         sum= i + b;      
         printf("sum= %d\n",sum);

	int i,j;
	i = 1;
	i++;	//i=2
	
	j = i++; //执行完毕后, j = 2,i = 3

	j = ++i; //执行完毕后, j = 4,i = 4

	j = i--; //执行完毕后, j = 4, i = 3

	printf("i = %d\n",i);
	printf("j = %d\n",j);

i=i+5  =====  i+=5  //可以产生高效率的目标代码

 

一元运算符  sizeof  ++ --

 

sizeof(int) 4

 

关系运算符 & 逻辑运算符

0为false  非0为true

接上边代码:

	if(sum){
		printf(" It is true\n");
	}else{
		printf(" It is false\n");
	}


&& 逻辑与运算

|| 逻辑或运算

 

关系运算符(返回布尔类型值)

> <  >=   <=  !=  ==

 

!一元否定运算符

 

编程习惯:两种写法,哪一种更好

if(sum == 1) 

if(1 == sum)

第二种写法好;如果第一种的话,在误写为 sum = 1 时,会给sum赋值为1;

而第二种写法,编译器会提示错误!!!

 

条件表达式 if  else

 

判断三个整数的大小


         方法一:使用中间变量

	int a = 10;
	int b = 11;
	int c = 12;
	int max = 0;

	
	if(a>b){
		max = a;
	}else{
		max = b;
	}
	if(c>max){
		max = c;
	}


	printf("max = %d",max);
	//方法二:直接比较
	int a = 14;
	int b = 13;
	int c = 12;
	int max = 0;

	if(a>b){
		if(a>c){
			max = a;
		}else{
			max = c;
		}
	}else{
		if(b>c){
			max = b;
		}else{
			max = c;
		}
	}

	printf("max = %d",max);
	int a = 14;
	int b = 13;
	
	if(a!=10&&b==13){//如果其中有一项不成立,则执行else
		a++;
		b--;
		printf("%d\n%d\n",a,b);
	}else{
		a--;
		b++;
		printf("%d\n%d\n",a,b);
	}


显式类型转化

 float i = 0;

int j = (int)i; //int j = int(i);

隐式类型转化

char c = 'c';

int i = c;

elseif 嵌套结构,测试多个表达式,一旦满足某个表达式,则执行表达式,后边的表达式不再测试


switch

----------------
	char grade;

	scanf("%c",&grade);

	switch(grade){
	case 'A':
		printf("choose A\n");
		break;
	case 'B':
		printf("choose B\n");
		break;
	case 'C':
		printf("choose C\n");
		break;
	case 'D':
		printf("choose D\n");
		break;
	default:
		printf("error\n");
	}

注:本博文为个人总结,如果有不当之处请指出,本文会有些散乱,请谅解!如需转载,请注明出处。

2012年3月3日




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值