美文网首页
2019-07-30

2019-07-30

作者: kkkk小天使 | 来源:发表于2019-08-01 10:01 被阅读0次

函数

1、为什么要用函数?

(1)代码结构复杂,不利于阅读,不利于移植

(2)函数是代码块,一个代码块解决一个问题,一个功能对应一个函数

         代码块是大括号里面的内容{}

2、怎么用

返回值    函数名称(参数,可以有一个或多个,也可以没有){

}、

void test(void){//没有参数和返回值

if(2>3){//不需要返回值

  return;}//return 返回值,提前终端某个函数

}

(1)先声明,后实现

(2)搭框架,不做具体的事情,具体的由每一个函数实现

3、头文件.h函数的声明,变量的声明(不能赋值)因为没有内存

                .c具体实现,实现函数的功能,操作变量

函数实现取款机:

#import <Foundation/Foundation.h>

#include <stdlib.h>

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

    //保存原始密码

    int password = 123;

    int inputPwd = 0;

    int totalTime = 4;

    int totalMoney = 1000;

    printf("**************\n");

    printf("  欢迎使用\n");

    printf("**************\n");

    //一个模块完成一个功能 耦合性降低

    printf("请输入密码:");

    while (1) {

        scanf("%d", &inputPwd);

        if (inputPwd == password) {

            //密码正确

            break;

        }else{

            totalTime--;

            if (totalTime == 0) {

                printf("此卡已冻结 请联系客服!\n");

                //退出

                exit(EXIT_FAILURE);

            }else{

                printf("密码不正确 请重新输入:");

            }

        }

    }

   //密码正确

    char choice;

    while(1){

        printf("**************\n");

        printf("1.取款\n");

        printf("2.存款\n");

        printf("3.设置密码\n");

        printf("4.退出\n");

        printf("**************\n");

        //判断输入是否合法

        char ch[20] = {};

        while (1) {

            //去掉上一次输入的回车符 \n

            printf("请选择操作:");

            int count = scanf("%s", ch);

            if (count != 1) {

                printf("输入不合法 ");

            } else{

                //获取第一个字符

                choice = ch[0];

                if (choice == '1' || choice == '2' || choice == '3' || choice == '4') {

                    break;

                } else{

                    printf("输入不合法 ");

                }

            }

        }

        //检测到底选择的是什么操作

        char choice2;

        int newPassword1 = 0;

        int newPassword2 = 0;

        switch (choice) {

            case '1':

                //取款

                while(1){

                    int outMoney = 0;

                    printf("请输入取款金额:");

                    scanf("%d", &outMoney);

                    if (outMoney > totalMoney) {

                      //金额不足

                        printf("余额不足是否继续(y/n):");

                        getchar();

                        choice2 = getchar();

                        if (choice2 == 'n') {

                            break;

                        }

                    }else{

                        totalMoney -= outMoney;

                        printf("取款成功 余额为:%d\n", totalMoney);

                        break;

                    }

                }

                break;

            case '2':

                printf("请输入存款金额:");

                int inputMoney = 0;

                scanf("%d", &inputMoney);

                totalMoney += inputMoney;

                printf("存款成功 余额为:%d\n", totalMoney);

                break;

            case '3':

                while (1) {

                    printf("请输入新密码:");

                    scanf("%d", &newPassword1);

                    printf("请确认密码:");

                    scanf("%d", &newPassword2);

                    if (newPassword1 == newPassword2){

                        password = newPassword1;

                        printf("更改密码成功\n");

                        break;

                    }else{

                        printf("两次密码不一致 ");

                    }

                }

                break;

            default:

                printf("感谢你的使用 再见!!!\n");

                exit(EXIT_SUCCESS);

                break;

        }

    }

    return 0;

}

相关文章

  • 2019-07-30 webstorm 最新注册码

    2019-07-30 webstorm 最新注册码 YZVR7WDLV8-eyJsaWNlbnNlSWQiOiJZ...

  • [补]Lan的ScalersTalk第四轮新概念朗读持续力训练D

    练习材料: [Day 1768 2019-07-30] Lesson 27-2The 'Vasa' They ha...

  • 2019-08-01

    2019-07-30 毛雅亭 字数 563 · 阅读 14 2019-06-02 18:39 ...

  • 文先森的日常

    日精进打卡第364天 姓名:李文杰 (四爷); 公司:中国太平人寿; 日期:2019-07-30 【知~学习】 《...

  • 夏季避暑杭州灵隐寺 清晨入古寺初日照高林

    夏季避暑杭州灵隐寺 清晨入古寺初日照高林 人生最好旅行 2019-07-30 11:32 夏季避暑杭州灵隐寺 清晨...

  • 以后

    时间:2019-07-30 20:51 周三 地点:湖北武汉 天气:好热,晚上下雨了 状态:有些开心 关键字:回首...

  • 深度践行14/90

    2019-07-30 今日天气:凉 【宣言】做更好的自己 #深度践行 教练姓名:谭福翠 孩子年龄+性别:张崤睿12...

  • 2019-07-30

    2019-07-30 姓名:郭祥华 组别:315期六项精进努力一组 【日精进打卡第570】 【知~学习】 背诵《...

  • 看图说话

    你的文章《2019-07-30》已转为仅自己可见,如有疑问请查看《为什么文章会被锁定?》或邮件联系 hel...

  • 2.0践行50/90

    2019-07-30 打卡天数:Day50 #不吼不叫做温柔父母# 菠萝7月目标: 亲子共读时间管理 妈妈7月目标...

网友评论

      本文标题:2019-07-30

      本文链接:https://www.haomeiwen.com/subject/yqrgrctx.html