2015级计科、软件《Java语言程序设计》实验1_基础语法1

ps:写在前面,最近开始学习JAVA语言...(此处省略一百字)

一、Java之ACM注意点

1. 类名称必须采用public class Main方式命名

2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非常之垃圾

3. 有些OJ上的题目会直接将OI上的题目拷贝过来,所以即便是题目中有输入和输出文件,可能也不需要,因为在OJ系统中一般是采用标准输入输出,不需要文件


二、Java之输入输出处理

由于ACM竞赛题目的输入数据和输出数据一般有多组(不定),并且格式多种多样,所以,如何处理题目的输入输出是对大家的一项最基本的要求。这也是困扰初学者的一大问题。

1. 输入:

格式1Scanner sc = new Scanner (new BufferedInputStream(System.in));

格式2Scanner sc = new Scanner (System.in);

在读入数据量大的情况下,格式1的速度会快些。

读一个整数: int n = sc.nextInt()相当于 scanf("%d", &n); 或 cin >> n; 

读一个字符串:String s = sc.next(); 相当于 scanf("%s", s); 或 cin >> s; 

读一个浮点数:double t = sc.nextDouble(); 相当于 scanf("%lf", &t); 或 cin >> t; 

读一整行: String s = sc.nextLine(); 相当于 gets(s); 或 cin.getline(...); 

判断是否有下一个输入可以用sc.hasNext()sc.hasNextInt()sc.hasNextDouble()sc.hasNextLine()



http://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Contest/problemlist/cid/2038    题目链接(都是基础)


A:

import java.util.*;
public class Main{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);	//借助Scanner这个类
		int a=sc.nextInt();		//数据输入
		int b=sc.nextInt();
		System.out.println(a+b);
	}
}

B:

import java.util.*;
public class Main20170304{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		while(sc.hasNextInt()){
			int a=sc.nextInt();
			int b=sc.nextInt();
			System.out.println(a+b);
		}
	}
}
C:

import java.io.*;
import java.util.*;

public class Main20170304_03{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		while(n>=1){		//不能这样写while(n--)
			int a=sc.nextInt();
			int b=sc.nextInt();
			System.out.println(a+b);
			n--;
		}
	}
}
D:

import java.io.*;
import java.util.*;


/*
总结:&& & || 和 | 会影响到判断语句的判断方式,一般来说,常用&& 和 || 
&& :判断时,如果第一个为true,继续判断第二个,第三个... 如果全部为true,结果为true,如果判断过程中一旦遇到false,将停止判断,因为对于判断是否全部为true的&&来说,只要有一个false,那么后续的判断都没有意义
||:它判断时,只要有一个为true,那么他得出的结果就为true,后续的判断也没意义,如果全为false,那么结果为false
& 和 | :它们的判断结果和&&、|| 没有区别,但在执行时有,也就是如果执行到某一部分即使已经得出结果,它们仍然会继续判断,直到所有的判断结束
我认为,在有些时候& 和 | 还是很有用的!
*/

//编码GBK的不可映射字符,选择ANSI编码即可
public class Main20170304_04{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int a=sc.nextInt();
		int b=sc.nextInt();
		while(!(a==0&&b==0)){
			System.out.println(a+b);
			a=sc.nextInt();
			b=sc.nextInt();
		}
	}
}
E:

import java.io.*;
import java.util.*;

public class Main20170304_05{	//在oj上提交时,必须是public class Main{}(修饰符为public,类名为Main)
								//否则Compile Error	
	public static void main(String[] args){
		int n,ans=0;
		Scanner sc=new Scanner(System.in);
		n=sc.nextInt();	//输入n
		while(n!=0){
			ans=0;
			for(int i=1;i<=n;i++){
				ans+=sc.nextInt();
			}
			System.out.println(ans);
			n=sc.nextInt();	//输入n
		}
	}
}
F:

import java.io.*;
import java.util.*;

public class Main20170304_06{
	public static void main(String[] args){
		int n,m,tmp,ans;
		Scanner sc=new Scanner(System.in);
		n=sc.nextInt();
		for(int i=1;i<=n;i++){
			m=sc.nextInt();
			ans=0;
			for(int j=1;j<=m;j++){
				tmp=sc.nextInt();	//ans+=sc.nextInt();
				ans+=tmp;
			}
			System.out.println(ans);
		}
	}
}
G:

import java.io.*;
import java.util.*;

public class Main20170304_07{
	public static void main(String[] args){
		int n,ans;
		Scanner sc=new Scanner(System.in);		
		while(sc.hasNextInt()){		//使用sc.hasNextInt()判断是否还有输入
			n=sc.nextInt();
			ans=0;
			for(int i=1;i<=n;i++){
				ans+=sc.nextInt();
			}
			System.out.println(ans);
		}
	}
}
H:

import java.io.*;
import java.util.*;

public class Main20170304_08{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		while(sc.hasNextInt()){
			System.out.println(sc.nextInt()+sc.nextInt());
			System.out.println();		//输出一个空白行
		}
	}
}

I:

import java.io.*;
import java.util.*;

public class Main20170304_09{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n,m,ans;
		n=sc.nextInt();
		for(int i=1;i<=n;i++){
			m=sc.nextInt();
			ans=0;
			for(int j=1;j<=m;j++){
				ans+=sc.nextInt();
			}
			System.out.println(ans);
			System.out.println();
		}
	}
}

J;

import java.io.*;
import java.util.*;

public class Main20170305_01{
	public static void main(String[] args){
		System.out.println("Hello World!");
		System.out.println();
	}
}
K:

import java.io.*;
import java.util.*;

public class Main20170305_02{
	public static void main(String[] args){
		System.out.println("100");
		System.out.println("A");
		System.out.println("3.140000");
	}
}
L:

import java.io.*;
import java.util.*;

public class Main20170305_03{
	public static void main(String[] args){
		int n=6;
		for(int i=1;i<=n;i++){
			for(int j=1;j<=i;j++){
				System.out.print("#");
			}
			System.out.println();
		}
	}
}
M:

import java.io.*;
import java.util.*;

public class Main20170305_04{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
											//使用sc.next(),读入字符串
		System.out.println(sc.next());		//并没有把读入的换行输出(因为只有一个换行输出)								
	}
}
N:

import java.io.*;
import java.util.*;

public class Main20170305_05{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		System.out.println(sc.nextInt()+sc.nextInt());
	}
}
O:

import java.io.*;
import java.util.*;

public class Main20170305_06{
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int x=sc.nextInt();
		int y=sc.nextInt();
		int tmp;
		tmp=x;x=y;y=tmp;
		System.out.print(x+" "+y);
	}
}













评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值