参考代码:
public void dna() { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for (int i = 0; i < n; i++) { int a = sc.nextInt(); int b = sc.nextInt(); char[][] arr = new char[a][a]; //两条对角线的公式分别是j+k==a-1,j==k for (int j = 0; j < a; j++) { for (int k = 0; k < a; k++) { //如果是对角线就直接输出 if (j+k==a-1||j==k) { arr[j][k] = 'X'; //如果是如果是下面那副图的彩色区域 }else if(j>k || j+k<a-1){ arr[j][k] = ' '; //s顶换行 }else { arr[j][k] = 's'; } } } for (int j = 0; j < b; j++) { //输出DNA if (j == 0) { //第一遍时,需要输出DNA的第一行 for (int m = 0; m < a; m++) { for (int k = 0; k < a; k++) { if (arr[m][k] != 's') { //把二维数组内为s的都排除不输出,就得到我们想要的答案了 System.out.print(arr[m][k]); } } System.out.println(); } } else { //到了第二遍重复,不能输入DNA第一行,故从第二行开始,其他不变 for (int m = 1; m < a; m++) { for (int k = 0; k < a; k++){ if(arr[m][k]!='s') { System.out.print(arr[m][k]); } } System.out.println(); } } } System.out.println(); } }
0.0分
0 人评分
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)万恶的long long浏览:875 |
WU-整数平均值 (C++代码)浏览:1237 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:667 |
sizeof的大作用 (C语言代码)浏览:1447 |
printf基础练习2 (C语言代码)浏览:503 |
简单的a+b (C语言代码)浏览:415 |
筛排处理 (C语言代码)浏览:782 |
小O的图案 (C语言代码)浏览:911 |
小O的乘积 (C语言代码)浏览:1008 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1180 |