黑马程序员---C基础3【变量的易错】【程序结构】【if语句】【Switch语句】

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

【变量的易错】

1、变量为什么要初始化为0

    int  sum,a=3;

    sum = sum+a

    如果未初始化则会成为一个不确定的变量,结果也会不确定,容易出错。

2、不同类型的变量之间的转换

    切记int  a=1,b=0;b=1-1.5;其中b为一个整型所有结果是保留整数部分的0,而不是-0.5,又因为0没有正负之分,所有保存结果为b=0;

3、关于Xcode的一个快速注释的插件

    快捷键:///

【程序结构】

1、什么是程序结构

其概念最早由E.W.Dijikstra在1965年提出的,是软件发展的一个重要的里程碑。它的主要观点是采用自顶向下、逐步求精及模块化的程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。结构化程序设计主要强调的是程序的易读性。

2、程序的结构有三种

顺序结构

顺序结构表示程序中的各操作是按照它们出现的先后顺序执行的。

选择结构

选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。

循环结构

循环结构表示程序反复执行某个或某些操作,直到某条件为假(或为真)时才可终止循环。在循环结构中最主要的是:什么情况下执行循环?哪些操作需要循环执行?循环结构的基本形式有两种:当型循环和直到型循环。

当型循环:表示先判断条件,当满足给定的条件时执行循环体,并且在循环终端处流程自动返回到循环入口;如果条件不满足,则退出循环体直接到达流程出口处。因为是"当     条件满足时执行循环",即先判断后执行,所以称为当型循环。

直到型循环:表示从结构入口处直接执行循环体,在循环终端处判断条件,如果条件不满足,返回入口处继续执行循环体,直到条件为真时再退出循环到达流程出口处,是先      执行后判断。因为是"直到条件为真时为止",所以称为直到型循环。

【if语句】

1、if语句介绍

  If (表达式/常量/变量)

  {

  语句1

  }

  后续语句

  如果表达式为真(不为0)则执行语句1,否则不执行;

  注意点:

    if(条件);可以直接写分号“;”表示什么也不干,空语句

    if(条件)return 0;直接退出;

    if(1),if(0),永远真,永远假;{大括号中永远执行,永远不执行}

    if语句的作用域问题  if语句也是一个代码块,属于局部变量。

    if语句后面只有一句话,则可以省略大括号

    不要随便省略大括号!

【Switch语句】

1、格式:

  switch(表达式){

    case  常量表达式1: 语句1;

    case  常量表达式1: 语句1;

    case  常量表达式1: 语句1;

    case  常量表达式1: 语句1;

    ....

    default:语句n+1;

  }

  case穿透:

    某个case语句执行完成后并没有结束而是直接向下执行其他case语句;

    如何防止case穿透:在每一个case语句之后加上break;跳出switch语句;

2、switch语句的使用注意:

  switch条件类型:

  表达式类型:

  整型的变量,整型的常量;

  返回值是整型的表达式;5+5

  转换为int类型的表达式;

  case语句后可以用多行语句,可以省略大括号;  空格和冒号,可以是常量,可以是常量表达式    5+5  (a+5不行),不可以是实数

  case语句默认第一句不能定义变量;第一句之后可以或者加一个大括号来定义;

  编译器bug

  default语句可以放switch的任意位置,break可以省略;default语句也会穿透!

  case穿透,如果default在case之前则不穿透;

3、if语句和switch语句的选择

分支比较多而且无法穷尽或进行大量列举时最好用if;

如果分支数量不是很多,但是使用if代码代码量比较大的时候,可以选用switch;

时间: 2024-10-12 17:44:23

黑马程序员---C基础3【变量的易错】【程序结构】【if语句】【Switch语句】的相关文章

黑马程序员——java基础——环境变量设置

-----------android培训.java培训.java学习型技术博客.期待与您交流!------------  关于环境变量的设置可能许多人认为这不是什么问题.但是我刚接触java程序的时候,一心想着编程,只要可以运行代码就ok了,管这些干嘛.也不知道怎么设置下,能运行DOS窗口就ok了,所以一直以来对这个问题都是含混不清.但这个问题就像一个鱼刺一样,一直卡在我的喉咙里,虽然不会对编程产生什么影响,但是总是会不舒服.所以今天特地花时间回头看了看视频,加上自己试验了多次,终于将这个问题弄

黑马程序员_JAVA 基础加强学习笔记

一.面向对象 (一)继承  1.继承的好处: (1) 提高了代码的复用性. (2) 让类与类之间产生了关系,提供了另一个特征多态的前提. 注意: 子类中所有的构造函数都会默认访问父类中的空参数的构造函数,因为每一个子类构造内第一行都有默认的语句super();  如果父类中没有空参数的构造函数,那么子类的构造函数内,必须通过super语句指定要访问的父类中的构造函数. 如果子类构造函数中用this来指定调用子类自己的构造函数,那么被调用的构造函数也一样会访问父类中的构造函数. 2.final特点

黑马程序员——Java基础---集合框架工具类

黑马程序员——Java基础<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------ 一.概述 Java为操作Set.List和Map提供了一系列工具类,主要有Collections和Arrays.这两个工具类的特点:类中的方法都是静态的,不需要创建对象,直接使用类名调用即可.Collections:是集合对象

黑马程序员_Java基础加强(上)

1.静态导入 静态导入是jdk1.5版本以后出现的新特性,一般是指导入静态方法,如:import static java.lang.System.out 是指导入系统输出的静态方法. 例: import static java.lang.System.out //导入java.lang包下的System类的静态方法out public class StaticImport { public static void main(String[] args) { int x=1; x++; out.p

黑马程序员——java基础——多线程

 黑马程序员--java基础--多线程 ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 进程:是一个正在执行中的程序.每一个进程执行都有一个执行顺序.该顺序是一个执行路径,或者叫一个控制单元. 线程:就是进程中的一个独立的控制单元.线程在控制着进程的执行.一个进程中至少有一个线程. 一个进程至少有一个线程在运行,当一个进程中出现多个线程时,就称这个应用程序是多线程应用程序,每个线程在栈区中都有自己的执行空间,自己的方法区.自己的变量.

黑马程序员——java基础——反射

 黑马程序员--java基础--反射 ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 反射 其实就是动态加载一个指定的类,并获取该类中的所有的内容.而且将字节码文件封装成对象,并将字节码文件中的内容都封装成对象,这样便于操作这些成员. 反射就是把Java类中的各种成分映射成相应的java类. 简单说:反射技术可以对一个类进行解剖. 反射的基石-->Class类 1.java中的类是用来描述一类事物的共性,该类事物有什么属性,没有什么属性

黑马程序员——java基础——内部类

 黑马程序员--java基础--内部类 ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 内部类 如果A类需要直接访问B类中的成员,而B类又需要建立A类的对象.这时,为了方便设计和访问,直接将A类定义在B类中.就可以了.A类就称为内部类.内部类可以直接访问外部类中的成员.而外部类想要访问内部类,必须要建立内部类的对象. 内部类的访问规则 1,内部类可以直接访问外部类中的成员,包括私有. 之所以可以直接访问外部类中的成员,是因为内部类中持有

黑马程序员——Java基础篇之对象归要

1.static关键字 1.1.static可以修饰成员变量,成员方法,还有类(其中这里的类是内部类) 1.2.static修饰的部分会随着类的加载而加载: 加载过程:当JVM执行static修饰的代码时,会在内存的共享区给static部分开辟一个空间,供该类持有,static部分不是某个对象的部分,而是该类共有的,所以当一个函数会被多个对象调用时,最好定义成static,这样比较节省空间. 1.3.静态方法只能访问静态成员 原因:如果静态方法中调用了非静态的变量,那么由于静态方法是随着类的加载

黑马程序员--Java基础--01基本概念

1.Java的三大技术架构 JAVAEE(Java Platform Enterprise Edition):  开发企业环境下的应用程序,主要针对web程序开发: JAVASE(Java Platform Standard Edition): 完成桌面应用程序的开发,是其他两者的基础 JAVAME(Java Platform Micro Edition): 开发电子消费产品和嵌入式设备,如手机中的程序 我对三大技术构架理解 1.三大技术是指哪三大技术呢? 答:三大技术分别指JAVAEE,JAV