java上机实验报告_西电计算机Java上机实验报告.docx

这篇博客是关于西安电子科技大学Java课程的上机实验报告,涵盖了两个主要任务:计算从1到指定整数的和及素数数量,以及分析数字串的奇偶性。实验通过编写Java程序实现,包括判断素数的函数和处理数字串的函数,加深了对Java编程的理解和应用。
摘要由CSDN通过智能技术生成

西安电子科技大学

Java课程上机练习题

(2016年度)

班 级:

姓 名:

学 号:

Java语言基础

1、实验目标:

掌握Java语法;掌握Java程序结构;掌握Java编译、调试、运行的方法。2、实验要求:

编写一个程序,程序提供两种功能:

(1)用户输入一个整数,程序计算并输出从1开始到该整数的所有整数之和;同时,计算并输出不大于该整数的所有素数的数目。

(2)用户输入一个数字串,程序判断该数字串各位上数字的奇偶性,并分别输出奇、偶数位的计数值及各位的加和值。

3、题目分析:

判断整数是素数要构建一个测试类,然后统计是素数的个数;数字串需要判断每位的数字的奇偶性,则要将数字串转化为数组的形式,然后进行奇偶判断,进行统计。

4、题目设计实现:

分别设计判断素数、整数求和、格式转变、判断奇偶性、各位求和的函数。5、实现过程:

//判断一个数是否是素数

public static boolean isPrime(int a){

boolean flag = true;

if(a<2)

return false;

else

for(int i = 2;i<=Math.sqrt(a);i++){

if(a%i == 0)

flag = false;

}

return flag;

}

//在main函数计算求和及判断

public static void main(String []args){

int sum=0,j=0;

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个数计算他的和");

int num = sc.nextInt();

for(int i=1;i<=num;i++){

sum = sum + i;

if(isPrime(i))

j++;

}

System.out.println("这个数的和为"+sum+"\n素数有"+j+"个");

//输入一个字符串并转化为数字存放到数组中

public static void main(String[] args){

System.out.println("请输入一串数字串");

Scanner scan = new Scanner(System.in);

String line = scan.next();

int odd=0,even=0,sumo=0,sume=0;

char[] c = line.toCharArray();

//求和

for(int i = 0; i

if((int)c[i]%2 == 0){

even++;

sume = sume +(int)c[i]-48;

}

else{

sumo = sumo +(int)c[i]-48;

odd++;

}

}

System.out.println("奇数共有"+odd+"个\n"+"奇数和为"+sumo);

System.out.println("偶数共有"+even+"个\n"+"偶数和为"+sume);

}

6、实验结果:

7、个人总结:

通过这次基础练习,对Java的各种规范和函数调用有了一定的熟悉,因为之前的编过类似的,所以用Java上手没有很陌生,算是一个很好的入门基础。

8、源代码:

1. 整数

import java.util.Scanner;

public class test {

public static void main(String []args){

int sum=0,j=0;

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个数计算他的和");

int num = sc.nextInt();

//System.out.println("hello world!");

for(int i=1;i<=num;i++){

sum = sum + i;

if(isPrime(i))

j++;

}

System.out.println("这个数的和为"+sum+"\n素数有"+j+"个");

sc.close();

}

public static boolean isPrime(int a){

boole

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值