#include <stdio.h>

#include <time.h>

#include <stdlib.h>

void test(){//汉字输出

printf("THIS IS TEST\n");

printf("My age is %d\n",26);

printf("My age is %4d  发现没?26前面多了两个空格\n",26);

printf("My age is %d,heighe is %f,name is %s,sex is %c\n",26,1.55,"李明杰",'A' );//双引号字符串(汉字属于字符串)用S,单引号字符用C

printf("My age is %d,heighe is %.2f,name is %s,sex is '%c'\n",26,1.55,"李明杰",'A' );// %.2f代表2位小数,'%c'输出时才会带上单引号,输出不会帮你单上单引号的

printf("sex is %s\n","男");

}

void test1(){//?:条件语句运用

printf("THIS IS TEST1\n");

int a,b,c;

scanf("%d %d %d",&a,&b,&c);

int d=(a>b?a:b)>(c)?(a>b?a:b):(c);

printf("%d\n",d);

}

void test2(){//电梯函数

printf("THIS IS TEST2\n");

int z=1,b,c;//默认为了TEST1中的第一个输入的数。

leap: {

printf("Welcome to take the elevator\ninput the floor you want to go,please...\n");

scanf("%d",&c);

srand((unsigned int)time(0));

b=rand()%103+1;//产生客户所在层数

printf("You are located in the first layer of %d,now.\n You will go to the %d layer\n The elevator is now located in the first layer of %d\n Wait a moment,please...\n",b,c,z);

if (z>b)

{//电梯靠近

for (int i=1; i<=z-b; i++)

{

printf("%d\n",z-i);

}

}

else if (z<b){

for (int i=1; i<=b-z; i++)

{

printf("%d\n",z+i);

}

}

else{

printf("电梯就在这一层\n");

}

printf("将要开门,请注意安全!!!\n");//开关门函数

printf("将要关门,请注意安全!!!\n");

if (b>c)//乘坐电梯到达目的地

{

for (int i=1; i<=b-c; i++)

{

printf("%d\n",b-i);

}

}

else if (b<c){

for (int i=1; i<=c-b; i++)

{

printf("%d\n",b+i);

}

}

else{

printf("电梯就在这一层,你运气真好");

}

printf("将要开门,请注意安全!!!\n欢迎你再次乘坐\n");//开关门函数

printf("将要关门,请注意安全!!!\n");

z=c;//让程序记住当前电梯所在楼层

}

goto leap;

}

void test3(){//电梯函数已解决

printf("THIS IS TEST3\n");

int a=1,b,c;//默认为了TEST1中的第一个输入的数。

printf("恭喜你成为此程序此次运行的第一个乘客!!!!\n");

leap: {

printf("Welcome to take the elevator\ninput the floor you want to go,please...\n");

scanf("%d",&c);

if (c>103) {

printf("输入错误!!!\n请重新输入\n");

}

else {

srand((unsigned int)time(0));

b=rand()%103+1;//产生客户所在层数

printf("You are located in the first layer of %d,now.\n You will go to the %d layer\n The elevator is now located in the first layer of %d\n Wait a moment,please...\n",b,c,a);

if (a>b)

{//电梯靠近

for (int i=1; i<=a-b; i++)

{

printf("%d\n",a-i);

}

}

else if (a<b){

for (int i=1; i<=b-a; i++)

{

printf("%d\n",a+i);

}

}

else{

printf("电梯就在这一层\n");

}

printf("将要开门,请注意安全!!!\n");//开关门函数

printf("将要关门,请注意安全!!!\n");

if (b>c)//乘坐电梯到达目的地

{

for (int i=1; i<=b-c; i++)

{

printf("%d\n",b-i);

}

}

else if (b<c){

for (int i=1; i<=c-b; i++)

{

printf("%d\n",b+i);

}

}

else{

printf("电梯就在这一层,你运气真好");

}

printf("将要开门,请注意安全!!!\n欢迎你再次乘坐\n");//开关门函数

printf("将要关门,请注意安全!!!\n");

a=c;

}

}

goto leap;

}int main(int argc, const char * argv[]) {

printf("Hello, World!\n");

test();

test1();

test2();//已解决电梯停留层数随机。

test3();//已解决不记录当前楼层问题。

return 0;

}

C语言 电梯函数的更多相关文章

  1. C语言pow函数编写

    C语言pow函数编写 #include<stdio.h> double chaoba(double f,double q); //声明自定义函数 void main(void) { dou ...

  2. C语言-自定义函数

    C语言自定义函数 --1-- 自定义函数定义 1.1 无参无返回值函数 1.2 无参有返回值函数 1.3 有参无返回值函数 1.4 有参有返回值函数 --2-- 函数的参数 2.1 形式参数介绍和使用 ...

  3. C语言printf()函数:格式化输出函数

    C语言printf()函数:格式化输出函数 头文件:#include <stdio.h> printf()函数是最常用的格式化输出函数,其原型为:     int printf( char ...

  4. C语言的函数

    "函数"在英文的翻译是"function",无论在自然科学还是计算机科学都是这个词,而"function"的本意是"功能" ...

  5. c语言main函数返回值、参数详解(返回值是必须的,0表示正常退出)

    C语言Main函数返回值 main函数的返回值,用于说明程序的退出状态.如果返回0,则代表程序正常退出:返回其它数字的含义则由系统决定.通常,返回非零代表程序异常退出. 很多人甚至市面上的一些书籍,都 ...

  6. Go语言示例-函数返回多个值

    Go语言中函数可以返回多个值,这和其它编程语言有很大的不同.对于有其它语言编程经验的人来说,最大的障碍不是学习这个特性,而是很难想到去使用这个特性. 简单如交换两个数值的例子: package mai ...

  7. 【学习笔记】【C语言】函数

    一. 什么是函数 任何一个C语言程序都是由一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为“函数”.所以,你可以说C语言程序是由函数构成的. 比如你用C语言编写了一 ...

  8. 【转载】 c语言inline函数的使用

    c语言inline函数的使用 转载自:http://blog.chinaunix.net/uid-21843265-id-3056446.html 大学在教科书上学习过inline函数,定义为inli ...

  9. 【C语言】函数和自定义函数

    函数,我之前也提到过一点点内容.其实函数是很好理解的,但是写起来又十分麻烦. 一.     函数引入 我们知道,C源程序是由函数组成的.请看下面的简单函数例子 #include <stdio.h ...

随机推荐

  1. 获取div相对文档的位置

    获取div相对文档的位置,两个方法 经测试 document.getElementById("btn").getBoundingClientRect() 在IE6下有2像素的bug ...

  2. 关于Android 访问权限设置

    我前几天在做同城交友网(www.niyuewo.com)与医药网(www.yiyaojing.com)时遇到的问题整理如下: Android开发应用程序时,如果应用程序需要访问网络权限,需要在 And ...

  3. linux下的十六进制编辑器---wxHexEdit

    ....其实wxHexEdit是一个跨平台的十六进制编辑器,支持windows,linux,mac. 之所以标题用linux...是因为windows下多数都用winhex,UE之类的编辑器,而lin ...

  4. 看完《Don't make me think》的总结

    寒假在公司实习,然后公司人数比较少,作为一个前端实习生,分工下,就去负责了项目的业务逻辑的梳理以及页面的设计,为了让页面设计的好看,交互性好,便于用户使用,我就快速看了这本薄薄的却很有用的书.书的整体 ...

  5. flume1.5.2安装与简介

    关于flume的简介看参考:http://www.aboutyun.com/thread-7415-1-1.html 其实一张图就简单明了了 简单安装: 1.下载解压 ... 2.配置JDK,flum ...

  6. FOR XML PATH 解决联接返回结果集各记录问题

    FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作.那么以一个实例为主 ...

  7. JAVA数字证书制作生成

    1.加密算法 为了网络通讯中的报文安全,一般需要对报文进行加密,目前常用的加密算法有: 非对称加密算法:又称公钥加密算法,如RSA.DSA/DSS,最常用的就是RSA算法(算法公开,可自行百度了解算法 ...

  8. springmvc(2)--参数绑定

    一.以实例来看springmvc各种参数绑定方式   先定义个dto类: public class RestInDto implements Serializable { private static ...

  9. centos下使用nohup

    Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序后台运行.比如我们要运行mysql在后台:/usr/local/mysql/bin/mysqld_sa ...

  10. 转: android app进程保活的文章列表

    1. Android 后台任务型App多进程架构演化 http://www.jianshu.com/p/4ac1f373e8cd 2. 关于 Android 进程保活,你所需要知道的一切 http:/ ...