3、;运算符类型示例+,-,*,/,%算术运算a/b、a%b>,<,>=,<=,==,!=关系运算if(a==b)、while(i>j)!,&&,
4、
5、逻辑运算(x>0)&&(x<10)=,+=,-=,*=,/=,%=赋值运算a-=a-5、a/=b?:条件运算(a>b)?a:b,逗号运算(a+b,a-b)++,--自增、自减a++、--b(类型名)变量名类型转换(float)x+(int)y函数名(参数)函数调用max(a,b)[],*和&指针运算a[i]=p[i]=*(a+i)=*(p+i)基本知识聚焦(顺
6、序结构)(1)以下叙述中正确的是A)输入项可以是一个实型常量如scanf(“%f”,3.5);B)只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(“a=%d,b=%d”);C)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf(“%4.2f”,&f);D)当输入数据时,必须指明变量地址,例如:scanf(“%f”,&f);D解析:选项A输入项必须是实型变量,错;选项B没有地址表列,错;选项C不允许规定精度,错。(2)设x和y均为int型变量,则以下语句:x+=
7、y;y=x-y;x-=y;的功能是A)把x和y按从大到小排列B)把x和y按从小到大排列C)无确定结果D)交换x和y中的值D基本知识聚焦(顺序结构)解析:x和y分别为1和2时代入执行即可(3)以下程序的输出结果是main(){inta=12,b=12;printf(“%d%d”,--a,++b);}A)1010B)1212C)1110D)1113(4)下列程序的输出结果是main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf("%d"
8、,d*y);}A)3B)3.2C)0D)3.07DC基本知识聚焦(顺序结构)解析:--a和++b均为先自减或自加后使用解析:此题关键是x的值,x=1.2;但x为整型变量,因此x值为1;y=4.8/5.0=0.96,y为整型变量,因此y的值为0(5)下列程序执行后的输出结果是(小数点后只写一位)main(){doubled;floatf;longl;inti;i=f=l=d=20/3;printf("%d%ld%f%f",i,l,f,d);}A)666.06.0B)666.76.7C)66
9、6.06.7D)666.76.0A基本知识聚焦(顺序结构)解析:赋值运算从右到左,首先计算20/3的值,为6,依次向左赋值即可。此题关键在于,20/3的结果与被赋值变量的类型无关。(6)下列程序的运行结果是main(){inta=2,c=5;printf("a=%d,b=%d",a,c);}A)a=%2,b=%5B)a=2,b=5C)a=d,b=dD)a=%d,b=%d(7)语句printf(“abre‘hi’y\bou”);的输出结果是(说明:'b'是退格符)A)abre
10、'hi'y\bouB)abre'hi'ybouC)re'hi'youD)abre'hi'ybouBC基本知识聚焦(顺序结构)解析:基本输出语句解析:了解字符型数据中转义字符的作用,见教材P14(8)若变量a、i已正确定义,且i已正确赋值,合法的语句是A)a==1B)++i;C)a=a++=5;D)a=int(i);(9)若有以下程序段,intc1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是A