「唐诗java」唐诗咏

博主:adminadmin 2023-01-20 09:48:05 210

本篇文章给大家谈谈唐诗java,以及唐诗咏对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

用java完成唐诗测试游戏:从每句随机去掉一个字_代替,然后将去掉的字组合为4种选项,让用户选择正确答案。

Java程序:

import java.util.Random;

public class Test0201 {

public static void main(String[] args) {

String[] poem = new String[]{"赠孟浩然",

"吾爱孟夫子", "风流天下闻",

"红颜弃轩冕", "白首卧松云",

"醉月频中圣", "迷花不事君",

"高山安可仰", "徒此揖清芬"};

String[] keys = new String[poem.length-1]; //存储每句中抽出的单字

String[] items = new String[4]; //存储4种备选答案选项

String correctItem;

int i;

drawKey(poem, keys);

correctItem = generateItems(keys, items);

System.out.println("以下唐诗的每一句都少一个字,请选择合适的选项,将各选项中的字接顺序填充后,形成完整的唐诗:\n");

System.out.println(poem[0]);

for(i=1; ipoem.length; i++){

System.out.println(poem[i] + (i%2==1 ?"," : "。"));

}

System.out.println();

for(i=0; iitems.length; i++){

System.out.println(items[i]);

}

System.out.print("\n正确答案:" + correctItem);

}

//从各句唐诗中抽取一个字并存储,将该字用“_”代替

public static void drawKey(String[] poem, String[] keys){

int i, pos;

Random rand = new Random();

for(i=1; ipoem.length; i++){

pos=rand.nextInt(poem[i].length());

keys[i-1] = poem[i].substring(pos, pos+1);

poem[i] = poem[i].substring(0, pos) + "_" + poem[i].substring(pos+1);

}

}

//组成备选答案选项,返回正确答案

public static String generateItems(String[] keys, String[] items){

Random rand = new Random();

int[] arr;

int n = keys.length;

int pos = rand.nextInt(4); //正确答案的位置

int i, j;

StringBuffer buff = new StringBuffer();

for(i=0; in; i++){

buff.append(keys[i]);

}

items[pos] = (char)('A' + pos) + ". " + buff.toString();

buff.delete(0, n);

for(i=0; i4; i++){

if(i == pos){

continue;

}

arr = generateArray(n);

for(j=0; jn; j++){

buff.append(keys[arr[j]]);

}

items[i] =(char)('A' + i) + ". " + buff.toString();

buff.delete(0, n);

}

return items[pos];

}

//生成由n个数字[0, n-1]组成的随机数数组

private static int[] generateArray(int n){

int[] arr = new int[n];

Random rand = new Random();

int i;

for(i=0; in;){

arr[i] = rand.nextInt(n);

if(isExistFigure(arr, i, arr[i])){

continue;

}

i++;

}

return arr;

}

//判断某数字在数组中是否存在

private static boolean isExistFigure(int[] arr, int n, int key){

for(int i=0; in; i++){

if(arr[i] == key){

return true;

}

}

return false;

}

}

运行测试:

第一次测试:

以下唐诗的每一句都少一个字,请选择合适的选项,将各选项中的字接顺序填充后,形成完整的唐诗:

赠孟浩然

吾_孟夫子,

_流天下闻。

红颜弃轩_,

白首卧松_。

醉月频中_,

迷花不事_。

高山安_仰,

_此揖清芬。

A. 爱徒君风可云冕圣

B. 云徒君风冕圣爱可

C. 君冕圣可风云徒爱

D. 爱风冕云圣君可徒

正确答案:D. 爱风冕云圣君可徒

第二次测试:

以下唐诗的每一句都少一个字,请选择合适的选项,将各选项中的字接顺序填充后,形成完整的唐诗:

赠孟浩然

吾爱孟夫_,

风流天下_。

红颜弃_冕,

_首卧松云。

醉月频_圣,

迷花_事君。

高山_可仰,

徒此揖_芬。

A. 不白闻子中轩清安

B. 子闻轩白中不安清

C. 白不闻轩清安子中

D. 清子不白中安轩闻

正确答案:B. 子闻轩白中不安清

一道java的程序问题

//下面是用一维数组写的

public class Test {

public static void main(String[] args) {

String shi="锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦";

String[] shis=shi.split(",");

for(int j=0;j5;j++){

for(int i=shis.length-1;i=0;i--){

System.out.print(shis[i].charAt(j)+" ");

}

System.out.println();

}

}

}

//下面是用2维数组写的

public class Test {

public static void main(String[] args) {

String[][] shi={{"锄","禾","日","当","午"},{"汗","滴","禾","下","土"},

{"谁","知","盘","中","餐"},{"粒","粒","皆","辛","苦"}};

for(int j=0;j5;j++){

for(int i=shi.length-1;i=0;i--){

System.out.print(shi[i][j]+" ");

}

System.out.println();

}

}

}

用java完成唐诗测试游戏:从每句随机去掉一个字_代替,然...

import java.util.Random;

public class Test {

public static void main(String[] args){

String tangshi = "锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦。" ;

char[] c = tangshi.toCharArray() ;

Random ran = new Random() ;

int ran1 = ran.nextInt(4) ;

int ran2 = ran.nextInt(4)+6 ;

int ran3 = ran.nextInt(4)+12 ;

int ran4 = ran.nextInt(4)+18 ;

char[] xuanxiang = new char[4] ;

xuanxiang[0] = c[ran1] ;

c[ran1] = '_' ;

xuanxiang[1] = c[ran2] ;

c[ran2] = '_' ;

xuanxiang[2] = c[ran3] ;

c[ran3] = '_' ;

xuanxiang[3] = c[ran4] ;

c[ran4] = '_' ;

for(int i=0; ic.length ; i++){

System.out.print(c[i]) ;

if((i==5)||(i==11)||(i==17)||(i==23)){

System.out.println() ;

}

}

int [] abcd = getABCD() ;

System.out.print("A、"+xuanxiang[abcd[0]]+" ");

System.out.print("B、"+xuanxiang[abcd[1]]+" ");

System.out.print("C、"+xuanxiang[abcd[2]]+" ");

System.out.print("D、"+xuanxiang[abcd[3]]);

}

public static int[] getABCD(){

int[] c = new int[4] ;

Random ran = new Random() ;

boolean flag = true ;

while(flag){

c[0] = ran.nextInt(4) ;

c[1] = ran.nextInt(4) ;

if(c[0] != c[1]){

c[2] = ran.nextInt(4) ;

if((c[0]!=c[2])(c[1]!=c[2])){

c[3] = ran.nextInt(4) ;

if((c[0]!=c[3])(c[1]!=c[3])(c[2]!=c[3])){

flag=false ;

}

}

}

}

return c;

}

}

如果是7字的诗你就自己修改吧!呵呵!

关于唐诗java和唐诗咏的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。