文件什么上传到wordpress怎样优化关键词到首页
| Unity3D特效百例 | 案例项目实战源码 | Android-Unity实战问题汇总 | 
|---|---|---|
| 游戏脚本-辅助自动化 | Android控件全解手册 | 再战Android系列 | 
| Scratch编程案例 | 软考全系列 | Unity3D学习专栏 | 
| 蓝桥系列 | ChatGPT和AIGC | 
👉关于作者
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎底部卡片私我,获取更多支持,交流让学习不再孤单。

👉实践过程
😜三角螺旋阵
方阵的主对角线之上称为“上三角”。
 请你设计一个用于填充n阶方阵的上三角区域的程序。填充的规则是:使用1,2,3….的自然数列,从左上角开始,按照顺时针方向螺旋填充。
 例如:当n=3时,输出:
 1 2 3
 6 4
 5
 当n=4时,输出:
 1 2 3 4
 9 10 5
 8 6
 7
 当n=5时,输出:
 1 2 3 4 5
 12 13 14 6
 11 15 7
 10 8
 9
 程序运行时,从标准输入获得整数n(3~20)
 程序输出:方阵的上三角部分。
 要求格式:每个数据宽度为4,右对齐。
import java.util.Scanner;  public class 三角螺旋阵 {  // 输出   public static void print(int[][] m){  for(int[] x:m){  for(int y:x){  System.out.printf("%4d",y);  }  System.out.println();  }  }  // 初始化   public static void init(int[][] m){  for(int i=0;i<m.length;i++){  m[i] = new int[m.length-i];  }  }  // 螺旋填充数字   public static void f(int[][] m,int k,int num){  if(k>=m.length/2) return ;  // 第一行   for(int i=k;i<m[k].length-k;i++){  m[k][i] = num++;   }  // 最后一位   for(int i=k+1;i<m[k].length-k;i++){  m[i][m[i].length-1-k] = num++;   }  // 左列   for(int i=m[k].length-2-k;i>k;i--){  m[i][k] = num++;   }  f(m,k+1,num);   // 递归进行内圈填充   }  public static void main(String[] args){  Scanner scan = new Scanner(System.in);  System.out.println("输入整数n(3~20)");  int n = scan.nextInt();  int[][] m = new int[n][];  init(m);    // 初始化   f(m,0,1);   // 螺旋填充数字   print(m);   // 输出   }  
} 😜干支记年法
在我国古代和近代,一直采用干支法纪年。它采用10天干和12地支配合,一个循环周期为60年。
 10天干是:甲,乙,丙,丁,戊,己,庚,辛,壬,癸
 12地支是:子,丑,寅,卯,辰,巳,午,未,申,酉,戌,亥
 如果某年是甲子,下一年就是乙丑,再下是丙寅,…癸酉,甲戌,乙亥,丙子,…
 总之天干、地支都是循环使用,两两配对。
 今年(2012)是壬辰年,1911年辛亥革命
 下面的代码根据公历年份输出相应的干支法纪年。已知最近的甲子年是1984年。
 请分析代码逻辑,并推测划线处的代码。
public class 干支记年法 {  public static void f(int year){  char[] x = {'甲','乙','丙','丁','戊','己','庚','辛','壬','癸'};  char[] y = {'子','丑','寅','卯','辰','巳','午','未','申','酉','戌','亥'};  int n = year - 1984;  while(n<0) {  n += 60;  }  System.out.printf("%d %s%s\n", year,x[n%10], y[n%12]);  }  public static void main(String[] args){  f(1911);  f(1970);  f(2012);  }  
}  
运行结果:
1911 辛亥  
1970 庚戌  
2012 壬辰😜异或加密法
在对文本进行简单加密的时候,可以选择用一个n位的二进制数,对原文进行异或运算。
 解密的方法就是再执行一次同样的操作。
 加密过程中n位二进制数会循环使用。并且其长度也可能不是8的整数倍。
 下面的代码演示了如何实现该功能。
public class 异或加密法 {  public static void print(char[] p){  for(char x:p){  System.out.printf("%s", x);  }  System.out.println();  }  public static void f(char[] buf, char[] uckey, int n) {  int i;  for (i = 0; i < n; i++)  buf[i] = (char) (buf[i] ^ uckey[i]);  }  public static void main(String[] args) {  char p[] = "abcd中国人123".toCharArray(); // 待加密串   char[] key = "11001100010001110".toCharArray(); // 以串的形式表达的密匙,运算时要转换为按位存储的形式。   int np = p.length;  int nk = key.length;  char[] uckey = new char[np];  // 密匙串需要按位的形式循环拼入 uckey中   int i;  for (i = 0; i < np * 8; i++) {  if (key[i % nk] == '1')  uckey[i/8] |= (char)0x80 >> (i%8); // 填空1   else  uckey[i/8] &= ~(char)0x80 >> (i%8); // 填空2   }  f(p, uckey, p.length);  print(p);  f(p, uckey, p.length);  print(p);  }  
}😜金字塔
下面代码的目标是输出一个大写字母组成的金字塔。
 其中space表示金字塔底距离左边的空白长度,x表示金字塔底的中心字母。
 比如:space=0, x=’C’,则输出:
 A
 ABA
 ABCBA
 再如:space=2,x=’E’, 则输出:
 A
 ABA
 ABCBA
 ABCDCBA
 ABCDEDCBA
请分析该段代码的逻辑,填写缺少的部分。
public class 金字塔 {  public static void h(int space, char x){  int i;  if(x<'A' || x>'Z') return;  h(space+1,(char)(x-1));     // 填空   for(i=0; i<space; i++) System.out.printf(" ");  for(i=0; i<x-'A'; i++) System.out.printf("%c",'A'+i);  for(i=0; i<=x-'A'; i++) System.out.printf("%c",(char)(x-i)); // 填空   System.out.printf("\n");  }  public static void main(String[] args) {  int space=0;  char x= 'E';  h(space,x);  }  
}  
运行结果:A  ABA  ABCBA  ABCDCBA  
ABCDEDCBA  👉其他
📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。
温馨提示:点击下方卡片获取更多意想不到的资源。
 
