java第三章课后习题
自己写的课后习题如有错误多多包涵
3.1
if(grade>7||grade<5)
{
aa=55;
}
else if(grade>5)
{
a=11;
b=22;
break;
}
else
{
a=33;
b=44;
break;
}
3.2
while循环是先判断条件是否满足,后执行循环体;
而do…while是先执行一遍循环体后判断条件,do…while至少执行一遍循环体。
3.3
Scanner sc=new Scanner(System.in); //exercises 3.3
int num;
System.out.print("请输入成绩(0~100):");
num=sc.nextInt();
if(num>=0&&num<=100)
{
System.out.print("成绩对应等级为:");
switch(num/10)
{
case 10:
case 9:System.out.println("A");break;
case 8:System.out.println("B");break;
case 7:System.out.println("C");break;
case 6:System.out.println("D");break;
default:System.out.println("E");
}
}
else
System.out.println("输入成绩错误!");
3.4
Scanner sc=new Scanner(System.in); //exercises 3.4
long n;
int i,j,len;
int a0=0,a1=0,a2=0,a3=0,a4=0,a5=0,a6=0,a7=0,a8=0,a9=0;
System.out.println("请输入一个16位的长整数:");
n=sc.nextLong();
len=(int)(n+"").length();
if(len!=16)
System.out.println("error");
else
{
for(i=1;i<=len;i++)
{
j=(int)(n%10);
switch(j)
{
case 0:a0++;break;
case 1:a1++;break;
case 2:a2++;break;
case 3:a3++;break;
case 4:a4++;break;
case 5:a5++;break;
case 6:a6++;break;
case 7:a7++;break;
case 8:a8++;break;
case 9:a9++;break;
}
n=n/10;
}
System.out.println("数字0出现的次数为:"+a0);
System.out.println("数字1出现的次数为:"+a1);
System.out.println("数字2出现的次数为:"+a2);
System.out.println("数字3出现的次数为:"+a3);
System.out.println("数字4出现的次数为:"+a4);
System.out.println("数字5出现的次数为:"+a5);
System.out.println("数字6出现的次数为:"+a6);
System.out.println("数字7出现的次数为:"+a7);
System.out.println("数字8出现的次数为:"+a8);
System.out.println("数字9出现的次数为:"+a9);
}
3.5
Scanner sc=new Scanner(System.in); //exercises 3.5
System.out.print("请输入需要输出*的行数:");
int n=sc.nextInt();
for(int i=1;i<=n;i++)
{
for(int j=1;j<=i;j++)
System.out.print("*");
System.out.println("");
}
3.6
int i=2,sum=0; //exercises 3.6
while(i<=100)
{
sum=sum+i;
i=i+2;
}
System.out.print(sum);
3.7
int sum=0; //exercises 3.7
for(int i=1;i<=99;i=i+2)
{
sum=sum+i;
}
System.out.print(sum);
3.8
int i=1,j,sum=0,n; //exercises 3.8
do
{
j=1;
n=1;
do
{
n=n*j;
j++;
}while(j<=i);
sum=sum+n;
i++;
}while(i<=100);
System.out.print(sum);
3.9
int len=3000,day=0; //exercises 3.9
while(len>=5)
{
len=len/2;
day++;
}
System.out.print(day);
3.10
int x,y,z; //exercises 3.10
for(int i=100;i<1000;i++)
{
x=i%10;
y=i/10%10;
z=i/100;
if(x*x*x+y*y*y+z*z*z==i)
System.out.println(i);
}
3.11
double v,ms,day; //exercises 3.11
v=100/9.8;
ms=6400000/v;
day=ms/86400;
System.out.println(day);