求大佬帮忙看一下
正常运行,但是无法显示选择,不知道哪出错了,跪谢大佬帮忙。#include<stdio.h>voidmain(){inta,b,c,d;printf("欢迎使用成绩管理系...
正常运行,但是无法显示选择,不知道哪出错了,跪谢大佬帮忙。#include<stdio.h>void main(){ int a,b,c,d; printf("欢迎使用成绩管理系统,请选择:\n1 学生成绩新增\n2 学生成绩查询\n3 学生成绩修改\n4 学生成绩删除\n5 班级成绩全览\n6 班级成绩统计\n0 退出\n"); loop:scanf("%d",&a); /* <----- 这里加个标号, goto 语句就可以转到这里了 */ switch(a) { case'1':printf("新增学生成绩信息功能待完成!");break; case'2':printf("尚未开发!敬请等待!");break; case'3':printf("尚未开发!敬请等待!");break; case'4':printf("尚未开发!敬请等待!");break; case'5': { printf("欢迎进入班级成绩全览:\n1---按学号顺序浏览\n2---按成绩排名浏览\n0---返回上一级"); scanf("%d",&b); if(b==1) { printf("按学号顺序浏览成绩功能待完成!");break; } else if(b==2) { printf("尚未开发!敬请等待!");break; } else if(b==0) { goto loop; } } case '6': { printf(" 欢迎进入班级成绩统计:\n 1----成绩段人数分布统计\n 2----统计不及格人数及名单\n 3----统计优秀人数及名单\n 0----返回上一级"); scanf("%d",&c); if(c==1||c==2||c==3) { printf("尚未开发!敬请等待!"); break; } else if(c==0) { goto loop; } } case '0': { printf("确定退出系统?(Y/N)"); scanf("%c",&d); if(d=='n'||d=='N') { goto loop; } else if(d=='y'||d=='Y') { return 0; } } }}
展开
2个回答
展开全部
package Product0002;
import java.util.Scanner;
public class 闰年查询 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner a=new Scanner(System.in);
System.out.println("请输入年份:");
int b=a.nextInt();
System.out.println("请输入月份:");
int c=a.nextInt();
switch(c){
case 1: case 3: case 5: case 7: case 8: case 10: case 12: //注意:相同的判断
//的CASE是可以在写在同一行的
if(b%400==0|b%4==0&b%100!=0)
System.out.println(b+"年"+c+"月有31天"+"(闰年)");
else if(b%400!=0|b%100==0)
System.out.println(b+"年"+c+"月有31天"+"(平年)");
break;
case 2:
if(b%400==0|b%4==0&b%100!=0)
System.out.println(b+"年"+c+"月有29天"+"(闰年)");
else if(b%400!=0|b%100==0)
System.out.println(b+"年"+c+"月有28天"+"(平年)");
break;
case 4: case 6: case 9: case 11:
if(b%400==0|b%4==0&b%100!=0)
System.out.println(b+"年"+c+"月有30天"+"(闰年)");
else if(b%400!=0|b%100==0)
System.out.println(b+"年"+c+"月有30天"+"(平年)");
break;
default:
System.out.println("输入有误请重新输入");
}
new Scanner(System.in).next();
}
}
没有循环和等待新的输入吧,这是一个类似的,用CASE的代码,可以参考,然后下面有一个,也是选择课表的题目,但是我用的是蠢办法,可以参考一下(都是测试过可以运行的)
public class 课表选择1 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner reader=new Scanner(System.in);
System.out.println("欢迎进入XX高中选课系统!");
System.out.println("1:数学");
System.out.println("2:语文");
System.out.println("3:英语");
System.out.println("4:物理");
System.out.println("5:化学");
System.out.println("请输入您要选择的课程编号:");
int i=reader.nextInt();
if(i<=1&i>0){
System.out.println("您选择的是数学");
}
else if(i<=2&i>1){
System.out.println("您选择的是语文");
}
else if(i<=3&i>2){
System.out.println("您选择的是英语");
}
else if(i<=4&i>3){
System.out.println("您选择的是物理");
}
else if(i<=5&i>4){
System.out.println("您选择的是化学");
}
else if(i>=0||i>5){
System.out.println("输入无效,请重新输入");
}
}
}
2018-12-07
展开全部
你的case。。。。。1 2 3 4 5.。。。数字为什么要用' '括起来,'1' 表示 字符1,而不是数字1.。。把'1'转成数字是 49. 匹配不了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询