----------------------------------------------------------------------------------------

//单一判断
if(a < ) {
  printf("小于0");
} //else
if(a < ) {
  printf("小于0");
} else {
  printf("不小于0");
} //if嵌套
if(a < ) {
  if(a < -) {
    printf("小于-5");
  } else {
    printf("不小于-5");
  }
} else {
  printf("不小于0");
} //级联if else if
if(a < ) {
  printf("小于0");
} else if(a < -) {
  printf("小于-5");
} else if(a < -) {
  printf("小于-10");
} else {
  printf("不小于0");
} //级联if else if 另一种写法(推荐写法:单一出口)
int sign = ;
if(a < ) {
  t = -;
} else if(a < -) {
  t = -;
} else if(a < -) {
  t = -;
} else {
  t = ;
}
printf("%d", t); //多路分支
switch(a) {
case :
printf("");
break;
case :
printf("");
break;
default:
printf("other");
}
Tips: 1. 不省略大括号;
    2. 赋值运算符与相等关系运算符在判断时注意不要用错

++与--

#include <stdio.h>

int main() {

  int a;

  a = ;

  printf("a++=%d \n", a++);   //2

  printf("%d \n", a);       //3

  printf("++a=%d \n", ++a);   //4

  printf("%d \n", a);       //4

  return ;
} 注:不管是a++还是++a,最后a的值都为a+1;区别是a++是一个表达式,结果为a+1前的结果;++作为前缀,++a的结果是a+1后的结果。

while与do..while

int a = ;
scanf("输入一个数:%d", &a);
while(a > ) {
  printf("a");
  a--;
}
printf("a"); do{
  printf("a");
  a--;
}while(a > );

猜数游戏

//
// main.c
// demo11
//
// Created by weichen on 14/12/22.
// Copyright (c) 2014年 weichen. All rights reserved.
// #include <stdio.h>
#include <stdlib.h>
#include <time.h> int main(int argc, const char * argv[]) {
//猜数
srand(time());
int a = rand()% + ;
int number;
int count = ; do{
printf("请输入1-100的数:");
scanf("%d", &number); count++; if(a > number) {
printf("您输的数小了!\n");
}else if(a < number){
printf("您输的数大了!\n");
}else{
printf("恭喜,您在第%d次猜对了!", count);
}
}while(a != number); return ;
}

for循环

#include <stdio.h>

int main(int argc, const char * argv[]) {
//求阶乘
int n; printf("请输入一个数:"); scanf("%d", &n); int i = ;
int total = ;
/*
while(i <= n) {
total *= i;
i++;
}
*/ /*
for(i; i<=n; i++) {
total *= i;
}
*/ for(int i=; i<=n; i++) {
total *= i;
} /*
int temp = n;
for(n; n>=i; n--) {
total *= n;
} printf("%d的阶乘为%d", temp, total);
*/ printf("%d的阶乘为%d", n, total); return ;
}

优先级

()
++ -- + - !
* / %
+ -
< <= > >=
== !=
&&
||
*= /= %= += -= =

循环控制

#include <stdio.h>

int main(int argc, const char * argv[]) {
// 用1角,2角,5角凑成5元的所有的方式
int one = ;
int two = ;
int five = ;
for(one = ; one < ; one++) {
for(two = ; two < /; two++) {
for(five = ; five < /; five++) {
if(one + two* + five* == ) {
printf("%d个1角加%d个2角加%d个5角可以凑成5元!\n", one, two, five);
}
}
}
} return ;
}
//上述的通用形式
#include <stdio.h> int main(int argc, const char * argv[]) {
// 用1角,2角,5角凑成x元的方式
int one = ;   //1角个数
int two = ;   //2角个数
int five = ;  //5角个数
int x = ;    //钱数
int sign = ;  //凑足标记 printf("请输入:");
scanf("%x", &x); for(one = ; one < x*; one++) {
for(two = ; two < x*/; two++) {
for(five = ; five < x*/; five++) {
if(one + two* + five* == ) {
printf("%d个1角加%d个2角加%d个5角可以凑成%x元!\n", one, two, five, x);
sign = ;
}
if(sign == ) {
goto out;  //跳至指定位置(出循环,只输出一次满足需求的方式)
}
}
}
} out: return ;
} 注:break跳出当前循环,不包括父级循环;continue跳过本次循环,继续下次循环

Link: http://www.cnblogs.com/farwish/p/4172901.html

[C语言]流程控制, 复合赋值, 优先级, 循环控制的更多相关文章

  1. 04. Go 语言流程控制

    Go 语言流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的"经脉". Go 语言的常用流程控制有 if 和 for,而 switch 和 ...

  2. Go语言流程控制(六)

    go语言的流程控制主要有if , for和switch. if else(分支结构) go语言的if判断: func main() { score:=65 if score>=90{ fmt.P ...

  3. 9. Go语言—流程控制

    一.流程控制语法 if condition_1{ }else if condition_2{ }else if condition_3{ }else{ } 二.switch分支 package mai ...

  4. Go语言( 流程控制)

    流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”. Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码.降低重复代码而生的结 ...

  5. Go语言 - 流程控制 if else | for | switch case

    流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”. Go语言中最常用的流程控制: if | for | switch | goto// switch ...

  6. C语言--流程控制

    一.流程控制 1.顺序结构 *默认的流程结构,按照书写顺序执行每一条语句 2.选择结构 *对给定的条件进行判断,再根据判断结果来决定执行那一段代码 3.循环结构 *在给定条件成立的情况下,反复执行某一 ...

  7. 07-C语言流程控制if、switch

    目录: 一.流程控制 条件分支 if else 二.流程控制 开关分支 switch 回到顶部 一.流程控制 条件分支 1.语法格式:if(表达式1){ //表达式1为真(非0时),执行的语句部分. ...

  8. Go语言流程控制

    1.条件语句 几个注意点和C#不一样的. { } else { } ① 条件语句不需要使用括号将条件包含起来 a<5 ,C#必须有() ②无论语句体内有几条语句,花括号{}都是必须存在的:C#如 ...

  9. C语言流程控制

    顺序结构 顺序结构是最常用的结构,即从上到下的执行语句. int num=5; num++; num=13; 条件结构 条件结构是当表达式为真的时候执行语句块,C语言提供了两种条件结构 if...el ...

随机推荐

  1. Spring AOP详解和实现方式

    一.什么是AOP AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善. ...

  2. Java - 25 Java 包(package)

    Java 包(package) 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间. 包的作用 1 把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用. 2 如同文件夹一样,包 ...

  3. django,flask接口初试

    -------------django 1.需要安装的环境 pip install django pip install djangorestframework ## restful组件 pip in ...

  4. kafka 消息系统

    一.为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险. ...

  5. js中script的上下放置区别 , Dom的增删改创建

    回顾 javascript分为三部分: 1.ECMAScript5.0 es6(阮一峰) es7 es8 es6中有类的概念 声明变量 var let(es6中语法) 内置函数 Date Math.r ...

  6. JavaScript正则表达式以及字符串处理

    正则表达式之基本概念 在我们写页面时,往往需要对表单的数据比如账号.身份证号等进行验证,而最有效的.用的最多的便是使用正则表达式来验证.那什么是正则表达式呢? 正则表达式(Regular Expres ...

  7. android开发 写一个自定义形状的按键

    步骤: 1.在drawable 文件夹中创建一个xml布局文件. 2.修改布局文件 3.在需要使用背景的按键中导入布局. 创建布局文件: 修改布局文件: <?xml version=" ...

  8. Maven的下载和配置

    一.下载 打开 链接地址 http://maven.apache.org/download.cgi 下载 Maven, 下载加压打开以后目录: 二.配置环境变量 我的电脑 -> 属性->高 ...

  9. Analysis of Web.xml in Hello1project

    一下是hello1  web inf 里的  web.xml <?xml version="1.0" encoding="UTF-8"?><w ...

  10. idea 关闭代码自动折叠,形参提示,行数栏图标,启动不默认打开上次的项目

    1,代码自动折叠 1.1,File > setting > Editor > General > Code Folding 1.2,勾选右侧不想要折叠的代码部分 2,形参提示 ...