第十次作业
1.实现一个菜单,可以切换,可以返回主菜单。 #include<stdio.h> #include<string.h> void mainMenu(); void denglu(); void zhuce(); void shuixianhua(); void returnToMenu(); main(){ mainMenu(); } void mainMenu() { int a; printf("1.登录\n"); printf("2.注册\n"); printf("3.输出水仙花数\n"); printf("4.退出程序\n"); printf("请你选择序号:"); scanf("%d",&a); switch(a){ case 1:denglu();break; case 2:zhuce();break; case 3:shuixianhua();break; } } void denglu(){ char x[20],y[20]; printf("输入用户名"); scanf("%s",&x); printf("请输入密码"); scanf("%s",&y); printf("登录成功"); returnToMenu(); } void zhuce(){ char x[20],y[20]; printf("输入用户名"); scanf("%s",&x); printf("请输入密码"); scanf("%s",&y); if(strcmp(x,"gjt")==0&&strcmp(y,"123")==0){ printf("登陆成功"); }else { printf("登录失败"); } returnToMenu(); } void shuixianhua(){ int i,a,b,c; for(i=100;i<=999;i++){ a=i/100%100; b=i/10%10; c=i%10; if(a*a*a+b*b*b+c*c*c==i) printf("水仙花数为:%d\n",i); } returnToMenu(); } void returnToMenu(){ char z[20]; printf("您是否要退出程序?/n"); scanf("%s",z); if(strcmp(z,"Y")==0) { printf("是\n"); }else { mainMenu(); } }
2.使用函数,求两个数的最大值,并调用。 #include<stdio.h> int zdz(int x,int y); main(){ int a,b; scanf("%d%d",&a,&b); printf("%d",zdz(a,b)); } int zdz(int x,int y){ return x>y?x:y; }
3.使用你递归函数,求阶乘,并调用求5的阶乘。 #include<stdio.h> int jiecheng(int a); main(){ int s; scanf("%d",&s); printf("%d",jiecheng(s)); } int jiecheng(int a){ int i; for(i=a;i>=1;i++){ if(i==1) return 1; else return a*jiecheng(a-1); } }
4.使用函数,判断一个年份是不是闰年,如果是闰年返回1,否则返回0。 #include<stdio.h> int nianfen(int a); main(){ int s; scanf("%d",&s); printf("%d",nianfen(s)); } int nianfen(int a){ if(a%4==0&&a%100!=0||a%400==0) return 1; else return 0; }
5.使用函数,求一个绝对值,并调用。 #include<stdio.h> int jueduizhi(int a); main(){ int s; printf("输入一个数\n"); scanf("%d",&s); printf("%d\n",jueduizhi(s)); } int jueduizhi(int a){ if(a<0) return a*(-1); else return a; }