第十二次作业
1.实现一个菜单 可以切换 ,可以返回主菜单
主菜单 1.登录 2.注册 3.输出水仙花数 4.退出程序请选择:选择后实现对应的功能
#include<stdio.h> #include<string.h> void mainMenu(); void login(); void regist(); void sxhs(); void returnToMain(); main() { mainMenu(); } void mainMenu(){ int i; printf("1.登录\n"); printf("2.注册\n"); printf("3.输入水仙花数\n"); printf("退出程序\n"); printf("请选择\n"); scanf("%d",&i); switch(i){ case 1: login(); break; case 2: regist(); 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("登录失败"); } returnToMain(); } void regist(){ 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("注册失败"); } returnToMain(); } void sxhs(){ printf("153,370,371,407"); returnToMain(); } void returnToMain(){ char answer[20]; printf("是否返回主菜单?Y/N\n"); scanf("%s",answer); if(strcmp(answer,"Y")==0) mainMenu(); else printf("谢谢使用,再见"); }

2. 使用函数,求2个数的最大值,并调用.
#include<stdio.h> void max(); main(){ max(); } void max(){ int i,j,max; printf("请输入两个整数\n"); scanf("%d%d",&i,&j); max=i>j?i:j; printf("%d",max); }

3.使用递归函数,求阶乘,并调用求5的阶乘。
#include<stdio.h> void jiecheng(); main(){ jiecheng(); } void jiecheng(){ int i,jc=1,n; printf("请输入一个数值\n"); scanf("%d",&n); for(i=1;i<=n;i++){ jc*=i; } printf("%d",jc); }

4.使用函数,判断一个年份是不是闰年,如果是闰年返回1,否则返回0。
#include<stdio.h> void pdt(); main(){ pdt(); } void pdt(){ int i; printf("请输入一个年份\n"); scanf("%d",&i); if((i%4==0&&i%100!=0)||(i%400==0)) printf("1\n"); else printf("0\n"); }

5.使用函数,求一个数的绝对值,并调用。
#include<stdio.h> void jdz(); main(){ jdz(); } void jdz(){ double i,j; printf("请输入一个数值i\n"); scanf("%lf",&i); if(i<0){ j=-1*i; printf("%.1lf",j); }else{ j=i; printf("%.1lf",j); } }


浙公网安备 33010602011771号