第一次过程性考核——结构化程序设计
第一次过程性考核
码云仓库链接:https://gitee.com/xywymxs/Myself.JAVA/tree/master/PTA--First%20Test
7-1 Hello World!
本题要求编写程序,输出一个短句“Hello World!”。
输入格式:本题目没有输入。
输出格式:在一行中输出短句“Hello World!”。
程序设计思路:直接调用Java的输出函数按要求输出。
涉及知识点:输出语句:System.out.println()
代码:
1 public class Main 2 { 3 public static void main(String arge[]) 4 { 5 System.out.println("Hello World!"); 6 } 7 }
运行结果:
7-2 求1到100的和
本题要求编写程序,计算表达式 1 + 2 + 3 + ... + 100 的值。
输入格式:本题无输入。
输出格式:按照以下格式输出:
sum = 累加和
程序设计思路:1到100连续相加利用循环语句for即可编译出来。
涉及知识点:for语句:
for(表达式1;表达式2;表达式3)
{
若干语句
}
代码:
1 public class Main
2 {
3 public static void main(String arge[])
4 {
5 int sum=0;
6 for(int i=0;i<=100;i++)
7 {
8 sum=sum+i;
9 }
10 System.out.println("sum = "+sum);
11 }
12 }
运行结果:
7-3 分段计算居民水费
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。
输入格式:输入在一行中给出非负实数x。
输出格式:在一行输出应交的水费,精确到小数点后2位。
程序设计思路:需先引入Java输入函数,在定义double型浮点数,再通过if-else分支语句根据条件来控制程序执行的流程,最后格式化输出。
涉及知识点:输入语句import java.util.Scanner
分支语句:if-else if-else语句
printf格式化输出
代码:
1 import java.util.Scanner;
2 public class Main
3 {
4 public static void main(String arge[])
5 {
6 Scanner reader = new Scanner(System.in);
7 double x =reader.nextDouble();
8 double y;
9 if (x<=15&&x>=0)
10 {
11 y=4*x/3;
12 System.out.printf("%2.2f",y);
13 }
14 else if(x>15)
15 {
16 y=2.5*x-17.5;
17 System.out.printf("%2.2f",y);
18 }
19 }
20 }
运行结果:
7-4 打印九九口诀表
本题要求对任意给定的一位正整数N
,输出从1*1
到N*N
的部分口诀表。
输入格式:输入在一行中给出一个正整数N
(1≤N
≤9)。
输出格式:输出下三角N*N
部分口诀表,其中等号右边数字占4位、左对齐。
for语句:
for(表达式1;表达式2;表达式3)
{
若干语句
}
格式化输出printf
1 import java.util.Scanner;
2 public class Main
3 {
4 public static void main(String arge[])
5 {
6 Scanner reader = new Scanner(System.in);
7 int x=reader.nextInt();
8 for(int i=1;i<=x;i++)
9 {
10 for(int j=1;j<=i;j++)
11 {
12 System.out.printf("%d*%d=%-4d", j, i, i * j);
13 }
14 System.out.println();
15 }
16 }
17 }
运行结果:
学习内容 | 代码(行) | 博客(字) |
第一次过程性考核 | 56 | 500 |
hello world | 21 | |
输入输出数据 | 61 |