给定一串字符串,将其转为int类型,并将数从小到大排列
String s="485192673";
int a=s.length();
int t[]=new int[a];
int z;
for(int i=0;i<a;i++) {
t[i]=Integer.parseInt(s.substring(i,i+1));
}
for(int j=0;j<6;j++) {
for(int c=0;c<a-1;c++) {
if(t[c]>t[c+1]) {
z=t[c];//利用中间变量z,将大小交换将大的值保存在中间变量
t[c]=t[c+1];//将值小的数放在值大的数的空间
t[c+1]=z;//将值大的数放回给值小的数的空间
}
}
}
for(int x:t){
System.out.println(x);
}
三目运算符的应用
三目运算符()?表达式1:表达式2;()内为true返回表达式1 false返回表达式2
判断是否及格:
int sorce=68;
String mark=(sorce>60)?"及格":"不及格";
System.out.println(mark);
计算1到100之内不能被三整除的数之和
int sum=0; //定义变量保存不能被三整除的数的和
for(int i=0;i<=100;i++) {
if(i%3!=0) { //求模取余判断
sum+=i;
}
}System.out.println("1到100不能被三整除的数的和为"+sum);
用continue计算1到10之内的偶数和
int sum=0;
for(int i=1;i<=10;i++) {
if(i%2!=0) { //判断是否位偶数,不是就跳过进行下次循环
continue;
}sum+=i;
}System.out.println(sum);
判断一个数(小于5位)的位数
Scanner input=new Scanner(System.in);
int s=input.nextInt();
int count=0;
if(s>9999 || s<0) {
System.out.println("重新输入");
}else {
while(s>0) {
s=s/10; //s为int类型值,当产生小数时自动截取整数部分
count++;
}
}
System.out.println(count);
输入一个成绩,实现对其加分,打印每次加分的信息直到及格
//为输入成绩加分,直到分数大于等于60为止,输出加分前和加分后的成绩,并统计加分次数
System.out.println("请输入初始分数:");
Scanner input=new Scanner(System.in);
int sorce=input.nextInt();
int count=0;
System.out.println("加分前成绩为"+sorce);
while(sorce<60) {
count++;
sorce++;
System.out.println("加分"+count+"次;"+"加分后成绩为"+sorce);//写在括号里面打印每一次加分信息,写在外面打印总的信息
}
输入三个班级每四个学生的成绩,并打印每个班级这四名学生的平均成绩,统计哪个班级的成绩最好
int classNum=3; //班级数量
int stuNum=4; //学生数量
double sum=0; //成绩总和
double avg=0; //成绩平均分
int s[]=new int[3];//数组保存平均成绩
Scanner input=new Scanner(System.in);
for(int i=1;i<=classNum;i++) { //外层循环控制班级数量
System.out.println("请输入第"+i+"个班级的成绩");
for(int j=1;j<=stuNum;j++) { //内层循环控制每个班级学员的数量
System.out.println("请输入"+i+"班第"+j+"个学生的成绩");
int sorce=input.nextInt();
sum=sum+sorce;
}
avg=sum/stuNum;//计算平均分
s[i-1]=(int)avg; //将平均成绩保存到数组里
System.out.println("第"+i+"个班级的平均分为:"+avg);
sum=0; //每次计算完一个班的平均成绩要清零
}for(int t=0;t<s.length;t++) { //将平均成绩由大到小保存在一个数组中
int y;
for(int z=0;z<s.length-1;z++) {
if(s[z]<s[z+1]) {
y=s[z]; //利用中间变量z,将大小交换将小的值保存在中间变量
s[z]=s[z+1]; //将值大的数放在值小的数的空间
s[z+1]=y; //将值小的数放回给值大的数的空间
}
}
}for(int x:s) { //for循环增强版输出数组的所有数据
System.out.println(x);
}