求字母塔输出………………………………………………………………………………………………………………………………………………………………………………………………………………………………
4条回答 默认 最新
- YAN_HUAXIANGMO 2017-07-15 09:45关注
方法可能比较蠢,但是可行
java代码public class 输出字母塔 { public static void main(String[] args) { char ch = 'A'-1; int x = 0; int col = 1;//这里的col控制每行字母个数 int line = 0; while(x<26){//这个循环用于统计行数 for(int y = 0; y<col; y++,x++){ ch = (char)(ch+1);//这里强转 //System.out.print(ch); } col += 2;//下一行递增2 line++;//统计行数 //System.out.print("\n"); } x = 0;ch = 'A'-1;col = 1;//重置全局变量 while(x<26){//这个循环用于输出字母塔 for(int p=0; p<line-1; p++){//先输出前面空格 System.out.print(" ");//输出line-1个空格 } line--;//下一行空格数又减一 for(int y = 0; y<col; y++,x++){ if(x>=26) break; ch = (char)(ch+1);//这里对'A'+y转换成后面的字母 System.out.print(ch); } col += 2;//下一行递增2 System.out.print("\n"); } } }
c两年没碰了,不过差不多应该如下:
#include <stdio.h> #include <stdlib.h> char ch = 'A'-1; int x = 0; int col = 1;//这里的col控制每行字母个数 int line = 0; while(x<26){//这个循环用于统计行数 for(int y = 0; y<col; y++,x++){ ch = (char)(ch+1);//这里强转 //printf("%s",ch); } col += 2;//下一行递增2 line++;//统计行数 //printf("\n"); } x = 0;ch = 'A'-1;col = 1;//重置全局变量 while(x<26){//这个循环用于输出字母塔 for(int p=0; p<line-1; p++){//先输出前面空格 printf(" ");//输出line-1个空格 } line--;//下一行空格数又减一 for(int y = 0; y<col; y++,x++){ if(x>=26) break; ch = (char)(ch+1);//这里对'A'+y转换成后面的字母 printf("%s",ch); } col += 2;//下一行递增2 printf("\n"); } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 ads仿真结果在圆图上是怎么读数的
- ¥20 Cotex M3的调试和程序执行方式是什么样的?
- ¥20 java项目连接sqlserver时报ssl相关错误
- ¥15 一道python难题3
- ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
- ¥15 牛顿斯科特系数表表示
- ¥15 arduino 步进电机
- ¥20 程序进入HardFault_Handler
- ¥15 oracle集群安装出bug
- ¥15 关于#python#的问题:自动化测试