[蓝蓝计算机考研算法训练二期]-day13

32 阅读1分钟

17、学生成绩

现有若干个学生(不超过100的数据记录),每个记录包括学号姓名,三科成绩,学号不超过15位,且有字母。成绩为整数,每名学生的姓名不超过10个字母,且只包含字母,读入n条记录,再按要求输出。
输入
学生数量N占一行 每个学生的学号、姓名、三科成绩占一行,空格分开。
输出
每个学生的学号、姓名、三科成绩占一行,逗号分开。
【输入样例】
2
a111 zhblue 70 80 90
b111 newsclan 90 85 75
【输出样例】
a111,zhblue,70,80,90
b111,newsclan,90,85,75

1、思路

还是字符串的替换就可以实现,把空格换成逗号,然后遍历输出即可。

2、具体实现

Java实现:

public static void main(String[] args) {
		Scanner scanner=new Scanner(System.in);
		int n=scanner.nextInt();
		String[] s=new String[n];
		s[0]=scanner.nextLine();
		if (scanner.hasNextLine()) {
			for(int i=0;i<n;i++) {
				s[i]=scanner.nextLine();
				s[i]=s[i].replaceAll(" ", ",");
			}
		}
		for (String string : s) {
			System.out.println(string);
		}
	}

结果:
image.png

18、求和 s=1!+2!+3!+…+10!

1、思路

算10的阶乘,只不过每多乘以一个数都要加到结果sum上。

2、具体实现

Java实现:

public static void main(String[] args) {
		int sum=1,num=1;
		for (int i = 2; i <= 10; i++) {
			num=num*i;
			sum+=num;
		}
		System.out.println(sum);
	}

结果:4037913