四、运算符(例2)

来源:互联网 发布:传奇db数据库参数 编辑:程序博客网 时间:2024/04/30 07:33
#include <stdio.h>#include <stdlib.h>int main(){   //取模(取余数)运算   int iCount=0;   printf("Rand number:");   while(1)   {      int iRnd=rand()%100;//rand()产生的是伪随机数      //取模常用来指示数组下标值范围,抽奖等应用            if(++iCount<20)printf("%d ",iRnd); else break;   }   printf("\n");         //除法运算   int iVal1=4,iVal2=3,iVal3=iVal1/iVal2;   printf("iVal3:%d iVal1/iVal2:%f\n",iVal1/iVal2,           (float)(iVal1/iVal2));   printf("iVal3:%d iVal1/iVal2:%f\n",iVal1/iVal2,           (float)iVal1/iVal2);   //printf("iVal3:%d iVal1/iVal2:%f\n",iVal1/iVal2,   //        float(iVal1/iVal2));这是C++的强制类型转换,在C里还没有被定义   //逻辑运算   int iBool=0;   1&&(iBool=2)?printf("iBool:%d\n",iBool):printf("iBool:%d\n",iBool);//能不能给iBool成功赋值   iBool=0;   0&&(iBool=2)?printf("iBool:%d\n",iBool):printf("iBool:%d\n",iBool);   //&&运算左值如果已经能决定整个逻辑表达式的结果,那后边的其它表达式就不会再运行 <--逻辑短路   iBool=0;   1||(iBool=2)?printf("iBool:%d\n",iBool):printf("iBool:%d\n",iBool);   //对++ --的理解   int iSum,iA=1,iB=0;       iSum=iA+++iB--;   int iSum2=-iA++ + iB--;//给一个整型数加上一个负号不代表它会变成另一个数(~,-,!)   //表达式中的运算符会影响到操作数变量本身值的,不允许多重嵌套使用   printf("iA:%d iB:%d iSum:%d iSum2:%d",iA,iB,iSum,iSum2);   //--iA++;  <--不行     -iA++;  <--可以   //++++--++--++++iB; //不要以为左值就一定放在左边   //iB++--++++--++++;   //++++iB;   //iB----;    //--(iB++);   //printf("\niB:%d",iB++);}

原创粉丝点击