#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. VM参数简介

    http://www.cnblogs.com/yuzhaoxin/p/4083612.html block_dump Linux 内核里提供了一个 block_dump 参数用来把 block 读写( ...

  2. 终端I/O之波特率函数

    波特率(baud rate)是一个以往采用的术语,现在它指的是"位/秒"(bits per second).虽然大多数终端设备对输入和输出使用同一波特率,但是只要硬件许可,可以将它 ...

  3. Can't find keyplane iOS模拟器键盘不显示解决办法

    静下心来学技术,新一波的问题再度来袭 学习swift的时候做一个app,需要用到数字键盘,但是在调试了几次后数字键盘便出不来了,控制台中弹出这样一个错误 Can't find keyplane tha ...

  4. iOS 超 Easy 实现 渐变导航栏

    接着上周的项目, 在上周我别出心裁的在自定义TabbarController中加入了自定义转场动画, 受到了大家广泛的喜爱, 再次表示感激, 今天我们继续实现LifestyleViewControll ...

  5. jquery的学习

    可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"."fast" 或毫秒.可选的 callback 参数是动画 100% 完成后所执行的函 ...

  6. uiview 的transitionWithView 方法使用

    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [UIView transitionWithView:_imageV ...

  7. Java基础知识强化之IO流笔记74:NIO之 Buffer

    Java NIO中的Buffer用于和NIO通道进行交互.如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的. 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存.这块内存被包装成NIO ...

  8. iOS菜鸟总结1

    我从第一次接触OC,我觉得想要学好就必须有提前的知识的储备(比如c,java).这样就可更好了解面向对象的这一思想.学起来就不是很吃力了,本来OC就是比较难学的语言.工欲善其事,必先利其器,Xcode ...

  9. Uva 10305 - Ordering Tasks 拓扑排序基础水题 队列和dfs实现

    今天刚学的拓扑排序,大概搞懂后发现这题是赤裸裸的水题. 于是按自己想法敲了一遍,用queue做的,也就是Kahn算法,复杂度o(V+E),调完交上去,WA了... 于是检查了一遍又交了一发,还是WA. ...

  10. 从敏捷开发到小团队SVN

    一.敏捷之惑 敏捷开发,有一个很好的实践,“每天都可以产生一个可用于发布的版本”. 以前对这句话感到非常的困惑,因为我们手中的项目是残缺的,基本只是程序的一个功能片段,在未集成之前如何发布得了?当然这 ...