第八次作业
1.实现一个菜单 可以切换 ,可以返回主菜单
主菜单
1.登录
2.注册
3.输出水仙花数
4.退出程序
请选择:
选择后实现对应的功能
#include<stdio.h> #include<string.h> void a(); void b(); void c(); void d(); void e(); main(){ a(); } void a(){ int i; printf("主菜单\n1.登录\n2.注册\n3.输入水仙花数\n4.退出程序\n请选择\n"); scanf("%d",&i); switch(i){ case 1: b(); break; case 2: c(); break; case 3: e(); break; } } void b(){ 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("登录失败"); } d(); } void c(){ char uname[20],upwd1[20],upwd2[20]; printf("****欢迎注册****\n"); printf("请输入用户名"); scanf("%s",uname); printf("请输入密码"); scanf("%s",upwd1); printf("请再次输入密码"); scanf("%s",upwd2); if(strcmp(upwd1,upwd2)==0){ printf("注册成功"); } else{ printf("注册失败"); } d(); } void d(){ char answer[20]; printf("是否返回主菜单?\n"); scanf("%s",answer); if(strcmp(answer,"y")==0) a(); else printf("再见"); } void e(){ int q,w,r; int i=100; while(i<1000) { q=i/100; w=i%100/10; r=i%10; if(i==q*q*q+w*w*w+r*r*r) printf("%4d\n",i); i++; } }
2.使用函数,求2个数的最大值,并调用
#include<stdio.h> int main() { int j,i; scanf("%d %d",&j,&i); printf("max=%d",compare(j,i)); } int compare(int x,int y) { return(x>y)?(x):(y); }
3.使用递归函数,求阶乘,并调用求5的阶乘
#include<stdio.h> int fac(int n) { if(n==1) return 1; else return n*fac(n-1); } main() { int m,f; printf("请输入一个数:\n"); scanf("%d",&m); f=fac(m); printf("m!=%d\n",f); }
4.使用函数,判断一个年份是不是闰年,如果是闰年返回1,否则返回0
#include<stdio.h> int year(int y) { if((y%4==0&&y/100!=0)||(y%400)==0) return 1; else return 0; } main() { int year; int tmp=0; printf("输入一个年份:\n"); scanf("%d",&year); if(1==tmp) printf("是闰年\n"); else printf("不是闰年\n"); return 0; }
5.使用函数,求一个数绝对值,并调用.
#include<stdio.h> #include<math.h> int main(int argc,const char**argv) { int number=0; scanf("%d",&number); printf("|%d|=%d\n",number,abs(number)); return 0; }