用JAVA怎么编写以下两个程序:?!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用JAVA怎么编写以下两个程序:?!相关的知识,希望对你有一定的参考价值。
1.要求用户首先分别输入名字和姓,然后打印输出一个字符串,该字符串由用户名字的首字母加不超过前五个字母的姓及一个10~99的随机数组成。类似的用法有时也用于生成计算机新用户账号。 2.编写一个应用程序,生成并打印输出一个XXX-XXX-XXXX类型的随机电话号码,包括连接线。前三个数字中不能有8或者9,中间三个数字组成的数不能大于742,提示:考虑最简单的方法来生成电话号码,不必分别确定每一个数字。 急~~~希望会的同仁在编好后,稍加解释!非常感谢~
import java.util.Scanner;public class TelephoneTest
//截取合适的字符串并用数字追尾
public String setName(String name1,String name2)
int max = 90,min=9;
String name = null;
//获取首字母
char t1 = name1.charAt(0);
char t2 = name2.charAt(0);
//首字母大写转换
t1=t1>=\'a\'&&t1<=\'z\'?(char)(t1-\'a\'+\'A\'):t1;
t2=t2>=\'a\'&&t1<=\'z\'?(char)(t2-\'a\'+\'A\'):t2;
//截取姓氏
if(name1.length()>5) name1 = name1.substring(1, 5);
else name1 = name1.substring(1, name1.length());
name = ""+t2+t1+name1+(min+extractNumber(max));
return name;
//生成随机数
public static int extractNumber(int max)
return (int)(Math.random()*max+1);
//读取姓氏和姓名
public String getName()
String name1,name2;
//创建输入器
Scanner s = new Scanner(System.in);
//分别读取姓氏和姓名
System.out.println("请输入您的姓氏:");
name1 = s.next();
System.out.println("请输入您的名字:");
name2 = s.next();
return setName(name1,name2);
//随机生成电话号码
public String makTeleNumber()
String TeleNumber = "";
String temp = "";
int num =-1;
//前三位
while(true)
num = (extractNumber(1000)-1);
temp = ""+num;
if(temp.indexOf(\'8\')!=-1)continue;
if(temp.indexOf(\'9\')!=-1)continue;
break;
TeleNumber +=addZero(3,num)+"-";
//中三位
num = (extractNumber(743)-1);
TeleNumber +=addZero(3,num)+"-";
//后四位
num = (extractNumber(10000)-1);
TeleNumber +=addZero(4,num);
return TeleNumber;
//追零占位
public String addZero(int size,int num)
String nums = ""+num;
int key = 10;
for(int i = 1;i<size;i++)
if(num/sqr(key,i)==0)
nums = zero(size-i)+num;
break;
return nums;
//平方
public int sqr(int num,int e)
int temp = 1;
while(e--!=0)
temp = temp*num;
return temp;
//添零
public String zero(int e)
String temp = "";
while(e--!=0)
temp+="0";
return temp;
public static void main(String[] args)
TelephoneTest tt = new TelephoneTest();
System.out.println(tt.getName()+" 的电话号码为:");
System.out.println(tt.makTeleNumber());
参考技术A 这个以前我有做过类似的。要的话告诉我你邮箱,我找下以前代码发给你
怎么编写Java程序打印九九乘法表?
用两个for循环,一个参数递增,另一个参数递减,代码如下:
public static void main(String[] args)
for (int i = 1; i <= 9; i++)
for(int n = 1; n <= i; n++)
System.out.print( i + " x " + n + " = " + i * n + "\\t");
System.out.println();
运行结果如下:
扩展资料:
Java中有三种主要的循环结构:
1、while 循环
while是最基本的循环,它的结构为:
while( 布尔表达式 )
//循环内容
只要布尔表达式为 true,循环就会一直执行下去。
2、do…while 循环
对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。
do
//代码语句while(布尔表达式);
3、for 循环
for循环执行的次数是在执行前就确定的。语法格式如下:
for(初始化; 布尔表达式; 更新)
//代码语句
参考资料:
Oracle官方API接口-Java™ Platform, Standard Edition 7API Specification
W3cSchool-Java 循环结构 - for, while 及 do…while
package text;
public class TEST
public static void main(String[] args)
for (int i = 1; i <=9; i++)
for (int j = 1; j <= i; j++)
System.out.print(j+"*"+i+"="+(i*j)+" ");
System.out.println( );
扩展资料:
用其他的方法输出九九乘法表:
#include<stdio.h>
#include<stdlib.h>
int main(void)
int i, j ;
for (i = 1; i < 10;i++)
for (j = 1; j <= i; j++)
printf("%d*%d = %-3d", i, j, i*j);
printf("\\n");
system("pause");
return0;
参考技术B程序如下
public class Multiplicaiton
public static void main(String[] args)
for (int i = 1; i <= 9; i++)
for(int n = 1; n <= i; n++)
System.out.print( i + " x " + n + " = " + i * n + " ");
System.out.println();
扩展资料
Java开发常用词
第一章:
public['pʌblik] 公共的,公用的
static['stætik] 静的;静态的;静止的
void:[vɔid] 空的
main:[mein] 主要的 重要的
class:[klɑ:s] 类
system:['sistəm] 系统 方法
out:[aut] 出现 出外
print:[print ] 打印
eclipse:[i'klips] java编程软件
第二章:
string:[striŋ] 字符串类型
double:['dʌbl] 双精度浮点型
int:[int] 整型
char:[tʃɑ:] 字符型
scanner:['skænə] 接收输入
integer:['intidʒə]整数 整型
type:[taip]类型
第三章:
Boolean:['bu:li:ən] 布尔类型真假二值
true:[tru:]真
false:[fɔ:ls]假 不正确的
if:[if] 如果
else:[els] 否则
simple:['simpl] 简单 单一体
第四章
case:[keis] 实例 框 架
default:[di'fɔ:lt] 或者
switch:[switʃ] 判断语句
break:[breik] 退出
match:[mætʃ] 匹配
assess:[ə'ses] 评估
exception:[ik'sepʃən] 异常
equals:['i:kwəls]判断两个字符串是否相等
public static void main(String[] args)
//9X9乘法表
//定义其中一个乘数,取值范围是1-9 ,循环条件是i++
for(int i=1;i<=9;i++)
//定义另一个乘数,取值范围也是1-9 ,循环条件是j++
for(int j=1;j<=i;j++)
//由于j<=i,输出时将j写在前边,为了好看后边加上制表位:"\t"
System.out.printj+"*"+i+"="+i*j+"\t");
System.out.println();
参考技术D public class Multiplicaiton
public static void main(String[] args)
for (int i = 1; i <= 9; i++)
for(int n = 1; n <= i; n++)
System.out.print( i + " x " + n + " = " + i * n + " ");
System.out.println();
本回答被提问者采纳
以上是关于用JAVA怎么编写以下两个程序:?!的主要内容,如果未能解决你的问题,请参考以下文章
IAR中编写STM8的程序,但是用STlink一直无法下载,一直出现以下两个问题,请问怎么解决