java学习笔记--1_常见输入输出语句熟悉篇章

今天上oj,想来是准备做做算法和数据结构的。看了看以前做的基础题目,想着就先熟悉一下java的语言吧!

以下是今天做的10道题目。

备注:oj有时候对格式要求非常严格,因为不在格式上纠结太久,只要eclipse编译出来正确的结果。我就直接跳过了!

一下是题目及代码:

1001 Hello World!

 Hello World!

     Time Limit: 200/100 MS (Java/Others)     Memory Limit: 32768/5000 K (Java/Others)
Total Submission(s): 2931 Accepted Submission(s): 1127 Description 输出以下一行文字: Hello World!
Input (无)
Output 利用printf()函数输出 "Hello World!"这行文字,最后要一个换行。
Sample Input (无)
Sample Output Hello World!
Hint
public class HellowWorld 
{
    public static void main(String args[])
    {
        System.out.println("Hello World!");
    } }

1002 格式化输出(常量练习)

 Description

 用C语言的printf( )函数输出下列内容:     请使用格式控制符,如 %d    %c   %f  等,否则判为cheat
100 ———— 一个整数
A ———— 一个字符
3.140000 —— 输出小数点后6位。
Input (本题目没有输入数据)
Output 输出三行数据:
100
A
3.140000
Sample Input (本题目没有输入数据)
Sample Output 100
A
3.140000 Author
John
 //3.140000 这个比较难一点
public class oj1002 {
public static void main(String args[])
{
char A='A';
//double b=3.140000;
System.out.println(100);
System.out.println(A);
//String b1 = new Double(b).toString();
//System.out.println(b1.substring(b1.lastIndexOf(".")+1,3));
//System.out.println((double) (Math.round(b*1000)/1000.0));
String pattern="0.000000";
java.text.DecimalFormat df=new java.text.DecimalFormat(pattern);
String s=df.format(3.140000);
System.out.println(s); } }

1003阶乘 I

Description

请输入并运行阶乘程序的代码,以验证代码的正确性,并对C语言程序有一个感性的认识。

利用以下公式,求一个正整数n的阶乘。

n!  =  1 * 2 * ... * n
Input 一个正整数 n 。
Output 计算并输出 n! 的值。
Sample Input 5
Sample Output 120
 public class oj1003
{
public static void main(String args[])
{
int n=5;
int result=1;
for(int i=1;i<=n;i++)
{
result=result*i; }
System.out.println(result);
}
}

1004阶乘 II

 Description

 本题与上一题《阶乘 I》是一样的,不同之处在于本题是多测试用例。通过本题,逐渐熟悉本OJ多测试用例的模式。

 利用以下公式,求正整数n的阶乘。

 n!  =  1 * 2 * ... * n
Input 本题有多测试用例。 每个测试用例占一行,每行是一个正整数 n 。
Output 为每个测试用例输出一行结果:n! 的值。
Sample Input 2
5
Sample Output 2
120
 public class oj1004
{
public static void main(String args[])
{
int n1=2,n2=5;
int re1=1,re2=1;
for(int i=1;i<=n1;i++)
{
re1=re1*i;
}
for(int j=1;j<=n2;j++)
{
re2=re2*j;
}
System.out.println(re1);
System.out.print(re2);
} }

1005图形输出(字符常量练习)

 Description

 用C语言的printf()函数输出下列内容:

     *
***
*****
*******
*********
Input 本题目没有输入数据
Output 输出的图形由5行组成,第一行有1颗星星,第i行有连续的2i-1颗星星。 注意每一行前面的空格数。最后一行前面没有空格。
Sample Input (本题目没有输入数据)
Sample Output *
***
*****
*******
*********
 public class oj1005
{
public static void main(String args[])
{
System.out.println(" *");
System.out.println(" ***");
System.out.println(" *****");
System.out.println(" *******");
System.out.println("*********"); } }

1006单个字符输入和输出(顺序结构)

 Description

 用 函数scanf()从键盘上输入一个字符,用 函数printf() 输出。

 本题用 函数getchar() 和 putchar() 也可以完成同样功能。请试一试。
Input 一个字符。
Output 输出刚刚读入的那个字符。温馨提示:不用输出换行哦。
Sample Input a
Sample Output a
Author
John
 public class oj1006
{
public static void main(String args[])
{
char q='a';
System.out.print(q);
}
}

1007字符输入和输出

 Description

 读入一个字符,然后输出它。
Input 有多个测试用例。 每个测试用例占一行:是一个字符。
Output 为每个测试用例输出一行:刚刚读入的字符。
Sample Input a
2
b
9
9
c
Sample Output a
2
b
9
9
c
 public class oj1007
{
public static void main(String args[])
{
char[] q={'a','2','b','9','9','c'};
for(int i=0;i<=4;i++)
{
System.out.println(q[i]);
}
System.out.print(q[5]); } }

1008计算a+b(顺序结构)

 Description

 这是一道在各OJ训练网站上最基本的题目,一般都放在第一道题,来让大家熟悉"在线程序自动评测系统"(简称OJ)的环境。

 读入两个整数,然后计算它们的和,并输出它们的和。
Input 输入只有一行,两个整数a和b。它们之间用空格分隔。
Output 输出这两个整数之和。
Sample Input 1 2
Sample Output 3
Author
John
 import java.util.Scanner;
public class oj1008
{
public static void main(String args[])
{
int a,b;
int c;
Scanner in=new Scanner(System.in);//输入两个整数
a=in.nextInt();
b=in.nextInt();
c=a+b;
System.out.println(c); } }

1009计算a+b(多测试用例)

 Description

 本题与上题类似,也是读入两个整数,计算并输出它们的和。

 不同之处在于本题是多测试用例。
Input 有多个测试用例,每个测试用例占单独一行:两个整数a和b,它们中间用一个空格分隔。
Output 对应每个测试用例,单独输出一行:这两个整数之和。
Sample Input 1 2
-1 9
Sample Output 3
8
 import java.util.Scanner;
public class oj1009
{
public static void main(String args[])
{
int a,b;
Scanner in=new Scanner(System.in);
while(in.hasNext())//有多行测试用例的时候用这个方法 Scanner in中的in就是in.hasNext()中的in
{
a=in.nextInt();
b=in.nextInt();
int c=a+b;
System.out.println(c);
} } }

1010求绝对值(分支结构)

Description

求实数的绝对值。本题用于练习选择结构(或称分支结构)。正数的绝对值是其本身,负数的绝对值是其相反数。
Input 有多个测试数据,一个占一行,每行是一个实数 a 。
Output 为每个测试数据输出一行:a的绝对值,结果保留两位小数。
Sample Input -126.369
66
-10
0
Sample Output 126.37
66.00
10.00
0.00
 import java.util.Scanner;
import java.text.DecimalFormat;
public class oj1010
{
public static void main(String args[])
{
Scanner in=new Scanner(System.in);
while(in.hasNext())
{
int a=in.nextInt();
if(a>=0)
{
String pattern="0.00";
//java.text.DecimalFormat df=new java.text.DecimalFormat(pattern);
DecimalFormat df=new DecimalFormat(pattern);
String s=df.format(a);
System.out.println(s);
}
else
{
a=Math.abs(a);
String pattern="0.00";
//java.text.DecimalFormat df=new java.text.DecimalFormat(pattern);
DecimalFormat df=new DecimalFormat(pattern);
String s=df.format(a);
System.out.println(s);
} }
} }

题目难度不大,适合熟悉相应语法和熟悉oj平台使用!每一道都可以仔细看一下。

上一篇:jedis异常:NoSuchElementException: Timeout waiting for idle object


下一篇:angular2新手学习笔记(1)概述