第十一次作业

1.实现一个菜单.

#include <stdio.h>

#include <string.h>

void mainMenu();

void login();

void regist();

void shuiXianHua();

void returnToMenu();

main()

{

    mainMenu();

}

void mainMenu()

{

    int i;

    printf("1.登录\n");

    printf("2.注册\n");

    printf("3.输出水仙花数\n");

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

    printf("请你选择序号:");

    scanf("%d",&i);

    switch (i)

    {

    case 1:login();

        break;

    case 2:regist();

        break;

    case 3:shuiXianHua();

        break;

    }

}

void login()

{

    char uname[20],upwd[20];

    printf("请输入你的用户名:");

    scanf("%s",uname);

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

    scanf("%s",upwd);

    if (strcmp(uname,"admin")==0&&strcmp(upwd,"admin")==0)

    {

        printf("登陆成功");

    }else

    {

        printf("登陆失败");

    }

    returnToMenu();

}

void regist()

{

    char uname[20],upwd1[20],upwd2[20];

    printf("请输入用户名:");

    scanf("%s",uname);

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

    scanf("%s",upwd1);

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

    scanf("%s",upwd2);

    if (strcmp(upwd1,upwd2)==0)

    {

        printf("注册成功");

    }else

    {

        printf("注册失败");

    }

    returnToMenu();

}

void shuiXianHua()

{

    int i,ge,shi,bai;

    i=100;

    while(i<1000)

    {

        ge=i%10;

        shi=i/10%10;

        bai=i/100;

        if (ge*ge*ge+shi*shi*shi+bai*bai*bai==i)

        {

            printf("水花仙数是%d\n",i);

        }

        i++;

    }

    returnToMenu();

}

void returnToMenu()

{

    char answer[20];

    printf("您是否要退出程序?Y/N,请输入:");

    scanf("%s",answer);

    if (strcmp(answer,"Y")==0)

    {

        printf("谢谢使用,再见\n");

    }else

    {

        mainMenu();

    }

}

 

 

2.使用函数,求两个数的最大值,并调用。

#include <stdio.h>

int max(int a,int b);

main()

{

    int a,b;

    printf("请输入两个数,(请用空格隔开):");

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

    printf("%d\n",max(a,b));

}

int max(int a,int b)

{

    if (a>b)

        return a;

    else

        return b;    

}

 

 

3.使用递归函数,求阶乘,并调用求5的阶乘

#include <stdio.h>

int func(int a);

main()

{

    int a;

    printf("请输入你要阶乘到的数:");

    scanf("%d",&a);

    printf("%d的阶乘结果是%d\n",a,func(a));

}

int func(int a)

{

    if (a==1||a==0)

    {

        return 1;

     } else

     return (a*func(a-1));

}

 

 

4.使用函数,判断一个年份是不是闰年,如果是闰年返回1,否则返回0

#include <stdio.h>

int year(int a);

main()

{

    int n;

    printf("请输入你的年份:");

    scanf("%d",&n);

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

}

int year(int a)

{

    if (a%4==0&&a%100!=0||a%400==0)

    {

        return 1;

    }

    return 0;

}

 

 

5.使用函数,求一个数的绝对值,并调用。

#include <stdio.h>

int jdz(int a);

main()

{

    int a;

    printf("请输入一个数:");

    scanf("%d",&a);

    printf("%d的绝对值是:%d",a,jdz(a));

}

int jdz(int a)

{

    if (a<0)

        return -1*a;

    return a;

}

posted @ 2021-12-05 20:21  KONE〈  阅读(10)  评论(0编辑  收藏  举报