C语言--程序设计基础——4、5章

来源:互联网 发布:java 数字分割 编辑:程序博客网 时间:2024/06/05 02:27

第四章

运算符

除法运算符:浮点类型的除法运算得出一个浮点结果,而整数除法运算得出一个整数结果。整数不能有小数,因此,在C语言中,整数除法的运算中小数部分都被丢弃,这个过程称为截尾。

注意:计算机不能真正用整数去除浮点数,所以编译器将两个操作数转变一致的类型。在这种情况下,做除法运算之前将整数转为浮点数。

增量和减量运算符

假设x=5,则

  1. y=++x*++x:   y=49,x=7   先进行两次x的自增1,x为7。++x为6,此时++x(后面一个)为x自增后的7,再是7*7=49.
  2. y=x++*x++:   y=25,x=7   先取x的值进行“*”运算,再进行两次自增1。先是5*5=25,再x++为6,此时(后面一个)为x自增后的7。

实例:

a=6

a=(++a) + (a++)              -------a=a+(a++)------>a=7+7

a=15                                        a=a++=14+1=15



a=6

a=a+(++a) + (--a) - (a++)

a=7+7+(--a) - (a++)

  =14+6 - (a++)

 =20-6+1

 =15

逻辑运算符

&&(只要一个为假,即为假)  逻辑与        a && b

||    (一真一假即为假)                 逻辑或       a || b

优先级比较

从低到高依次为:赋值运算符、&&和||、关系运算符、算术运算符、!(非)

数据类型强制转换运算符

  • 自动类型转换
  1. 在表达式里,有符号和无符号的char和short类型都将自动转换为int
  2. 在包含两种数据类型的任何运算里,两个值都被转换成两种类型里较高的级别,称为提升
  3. 类型级别从高到低:double、float、long、int
  4. 在赋值语句里,计算的最后结果被转换成将要被赋予值的那个变量的类型,这个过程可能导致提升,也可能导致降级
  5. 当作为函数的参数被传递时,char和short会被转化为int,float会被转换为double。

第五章 选择结构的程序设计

用if语句设计选择结构程序

if语句:1是真,0是假;if else;嵌套if

例:

#include<stdio.h>

int main(void) {

int age;

scanf("%d", &age);

if(age>18) {

printf("您已经是成年人了!");

}

else {

printf(“您还是个未成年人!”);

}

}

switch语句

#include<stdio.h>

int main(void){

int a;

scanf("%d", &a);

switch(a) {

case 0:

printf("输入了0\n");

break;//不使用break会向下漏水

case 1:

printf("输入了1\n");

break;

default:

printf("输入了其他的\n");

}

}

goto语句:可以转向同一函数内任意指定位置执行

例:

#include<stdio.h>

int main(void) {

int x;

scanf("%d", &x);

if(x<0) {

g:

printf("负数\n");

}

if(x>0) {

printf("正数\n");

goto g:

}

}




0 0
原创粉丝点击