1 //// while是C语言的一个关键字,其后是使用一个小括号中的条件表达式来做为执行循环的条件,
2 ////也就是说当条件表达式的结果为真时执行大括号里面的的程序内容,
3 ////而当条件表达式的结果为假时不执行大括号中的内容。其实这与if语句的语法有些类似,
4 ////当条件表达式为真时if后的执行程序只执行一次,而while则会循环执行下去,直到条件表达式的结果为假时结束
5 ////switch(选择判断--开关语句)的简单运用,switch通常情况下不经常使用,因为switch下每一条case只能对应一种情况
6 ////而且每条case下面都必须要有break,容易被忽略
 #define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h> int main()
{
int day = ;
printf("输入一个数字判断它是星期几\n");
scanf("%d", &day);
switch (day){
case() :
printf("星期一\n");
break;
case() :
printf("星期二\n");
break; case() :
printf("星期三\n");
break; case() : printf("星期四\n");
break; case() :
printf("星期五\n");
break; case() :
printf("星期六\n");
break; case() :
printf("星期天\n");
break;
default:
printf("非法输入\n");
break;
} system("pause");
return ;
}


该条语句当 printf("%d\n", day):
放在while内部时候,当放在day++上面的时候,day打印出来的值为1一直到31,当放到day++下面的时候,day打印出来的值为1一直到32。
当放到while外面的时候打印出来的结果为32,因为条件为假是day的值加到32跳出循环在打印结果为32。

 #include <stdio.h>
#include <stdlib.h>
int main()
{
int day = ;
while (day <= )
{ day++;
}
printf("%d\n", day); system("pause");
return ;

 //c语言do while语句的学习
//与while类似,do while语句也同样是用于完成程序循环的一种方式,它的基本用法如下: /*do
{
//循环体
} while (条件表达式); 大家可以注意到do while语法与while有一些类似,也有一些不同,类似的地方是它同样有循环体和条件表达式,但执行顺序与while不同,do while是先执行一次循环体之后再进行条件判断。 注意,在do while语句的条件判断后要加上一个分号; 表示语句的结束。我们还是用显示31天的例子来学习这个语法:*/ #include <stdio.h>
#include <stdlib.h>
int main()
{
int day = ;
do{
printf("%d\n", day);
day++;
} while (day <= );
system("pause");
return ;
}
////先执行后判断当执行到day++为32的时候,条件为假,跳出循环,此时打印的值为31.
////当然这里面也可以先day++1,在打印,结果为32.
////接下来我们来看一看关于while语句和do while语句的细微差别。
////do while语句在在执行时无论条件表达式的结果是真还是假,都会执行一次循环体,
////然后再进行条件判断。例如我们分别写这样两段程序,它们的执行结果是不一样的,
////使用while执行循环:
//
//int i = 0;
//while (i < 0)
//{
// i++;
// printf("%d\n", i);
//}
//
////执行0次循环,没有运行结果;
//
//
//
////使用do while执行循环:
//
//int i = 0;
//do
//{
// i++;
// printf("%d\n", i);
//} while (i < 0);
//
////执行1次循环,运行结果为1

while do while switch语句的简要分析的更多相关文章

  1. 通过字节码分析java中的switch语句

    在一次做题中遇到了switch的问题,由于对switch执行顺序的不了解,在这里简单的通过字节码的方式理解一下switch执行顺序(题目如下): public class Ag{ static pub ...

  2. switch语句分析

    1.关于switch语句 如果if语句中表达式是判断是否等于一个常量时,可以用switch语句来代替 if(表达式 == 常量1)                        {          ...

  3. 透过IL看C#:switch语句(转)

    透过IL看C# switch语句(上) 摘要: switch语句是 C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码.本文介绍了当向 switch语句中传入不同类型的参数时,编译器为其生 ...

  4. switch语句(下)(转载)

    之前我们介绍了在switch语句中使用整数类型和枚举类型的情况.这一部分继续介绍使用string类型的情况.string类型是switch语句接受的唯一一种引用类型参数. 下面来看一段C#代码. 代码 ...

  5. java AST JCTree简要分析

    JCTree简要分析 [toc] JCAnnotatedType 被注解的泛型:(注解的Target为ElementType.TYPE_USE时可注解泛型) public static class A ...

  6. switch语句

    应用条件语句可以很方便地使程序实现分支,但是出现分支比较多的时候,虽然可以用嵌套的if语句来解决,但是程序结构会显得复杂,甚至凌乱.为方便实现多情况选择,C++提供了一种switch开关语句.   一 ...

  7. switch语句的使用,非常好

    这是谭浩强课本上枚举类型的例子,但是我贴这个例子的代码不是因为枚举类型,是因为这个代码使用switch语句用得非常好,值得一贴. 题目是这样的:有红.黄.蓝.白.黑5中颜色的球若干,依次取出3个球,求 ...

  8. PROCESS_YIELD()宏和C语言的switch语句< contiki学习笔记之七>

    写在前面:  按照main()函数的代码一行一行的分析,该是看到了 etimer_process 这个位置.但是etimer_process实现里的一个宏 PROCESS_YIELD()引出了很多故事 ...

  9. CVE-2015-5122 简要分析(2016.4)

    CVE-2015-5122 简要分析 背景 最近在学习Flash漏洞的分析,其与IE漏洞的分析还是有诸多的不同(不便)之处,折腾了一阵子终于克服了没有符号表.Flash的超时定时器等问题.所以找到了去 ...

随机推荐

  1. 监控DAG状态

    Add-PSSnapin microsoft.exchange* Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010 $server ...

  2. Go语言 map遍历

    1 遍历顺序 Go语言里的map,是不保证遍历顺序的(这一点很好理解).甚至同样内容的map,两次遍历的顺序,也可能不一样.下面是一个例子: m := map[string]int{"a1& ...

  3. mongoDb 命令

    1.显示MongoDB的服务器统计:db.stats() 2.创建数据库:use dbname 3.删除数据库:db.dropDatabase() 4.检查当前选择的数据库:db 5.检查数据库列表: ...

  4. 微软在线 VSTS/TFS 使用简介,如何删除项目,帐号,获取git地址等

    名称:微软 VSTS 全称: Visual Studio Team Services 地址:https://www.visualstudio.com/zh-hans/ 说明:注册就可以了使用了(如何使 ...

  5. asp.net mvc 4.0常见的几个问题

    看书的时候遇到很多不知所云的错误,都是在网上找到的解决方法,没办法,从asp.net到mcv很多的新技术,没有一点思路,只能在网上搜罗了. 1.更新产品不成功 更新产品的时候一直不能更新成功,但是很奇 ...

  6. ZT北大青鸟营业额超20亿到不值一提 衰落的背后

    北大青鸟营业额超20亿到不值一提 衰落的背后 2013-10-18 08:18 王根旺  我要评论 (0) “北大青鸟是个悲剧!”说到曾经的IT培训业巨头,黑马导师.珍品网创始人曹允东惋惜道.在学大创 ...

  7. Celery+redis实现异步

    目录 Celery+redis实现异步 安装redis 安装celery-with-redis 添加celery相关配置 创建异步运行任务tasks.py 启动 Celery+redis实现异步 安装 ...

  8. angular里forRoot的作用

    模块A是这样定义的 @NgModule({ providers: [AService], declarations: [ TitleComponent ], exports: [ TitleCompo ...

  9. 【[NOI2016]区间】

    发现自己的离散化姿势一直有问题 今天终于掌握了正确的姿势 虽然这并不能阻挡我noip退役爆零的历史进程 还是先来看看离散化怎么写吧,我以前都是这么写的 for(std::set<int>: ...

  10. [19/04/06-星期六] 多线程_静态代理(StaticProxy)和 lamda (简化代码,jdk8新增)

    一.静态代理 [代码示例] /*** * 静态代理:记录日志等,类是写好的,直接拿来用. 动态代理:随用随构建,临时抱佛脚 * 婚庆公司:代理角色,帮你搞婚庆的一切,布置房间等等 * 自己:真实角色, ...