如何用C语言for循环控制输出字母组成的等腰三角形,如:输入D,输出: A ABA ABCBA ABCDCBA
发布网友
发布时间:2022-04-29 17:36
我来回答
共1个回答
热心网友
时间:2023-10-24 11:53
#include <stdio.h>
#include <math.h>
int main() {
char max = '\0';
int i = 0, j = 0, m = 0;
puts("请输入A~Z");
scanf("%c", &max);
if (max >= 'A' && max <= 'Z') {
m = max - 'A';
/* 输入A时 m = 0,输入B时 m = 1 …… */
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j < m - i; j++) {
printf(" ");
}
for (j = 0; j <= i; j++) {
printf("%c", 'A' + j);
}
for (j = i - 1; j >= 0; j--) {
printf("%c", 'A' + j);
}
printf("\n");
}
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j <= m + i; j++) {
if (j < m - i) {
printf(" ");
} else {
printf("%c", (char)(max - fabs(m - j)));
}
}
printf("\n");
}
puts("-------------------------------------------");
} else {
puts("输入内容有误");
}
return 0;
}
纯数学计算而已
-------------------------
哦,我这写的是你正文中的,标题那个等我写给你
热心网友
时间:2023-10-24 11:53
#include <stdio.h>
#include <math.h>
int main() {
char max = '\0';
int i = 0, j = 0, m = 0;
puts("请输入A~Z");
scanf("%c", &max);
if (max >= 'A' && max <= 'Z') {
m = max - 'A';
/* 输入A时 m = 0,输入B时 m = 1 …… */
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j < m - i; j++) {
printf(" ");
}
for (j = 0; j <= i; j++) {
printf("%c", 'A' + j);
}
for (j = i - 1; j >= 0; j--) {
printf("%c", 'A' + j);
}
printf("\n");
}
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j <= m + i; j++) {
if (j < m - i) {
printf(" ");
} else {
printf("%c", (char)(max - fabs(m - j)));
}
}
printf("\n");
}
puts("-------------------------------------------");
} else {
puts("输入内容有误");
}
return 0;
}
纯数学计算而已
-------------------------
哦,我这写的是你正文中的,标题那个等我写给你
热心网友
时间:2023-10-24 11:53
#include <stdio.h>
#include <math.h>
int main() {
char max = '\0';
int i = 0, j = 0, m = 0;
puts("请输入A~Z");
scanf("%c", &max);
if (max >= 'A' && max <= 'Z') {
m = max - 'A';
/* 输入A时 m = 0,输入B时 m = 1 …… */
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j < m - i; j++) {
printf(" ");
}
for (j = 0; j <= i; j++) {
printf("%c", 'A' + j);
}
for (j = i - 1; j >= 0; j--) {
printf("%c", 'A' + j);
}
printf("\n");
}
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j <= m + i; j++) {
if (j < m - i) {
printf(" ");
} else {
printf("%c", (char)(max - fabs(m - j)));
}
}
printf("\n");
}
puts("-------------------------------------------");
} else {
puts("输入内容有误");
}
return 0;
}
纯数学计算而已
-------------------------
哦,我这写的是你正文中的,标题那个等我写给你
热心网友
时间:2023-10-24 11:53
#include <stdio.h>
#include <math.h>
int main() {
char max = '\0';
int i = 0, j = 0, m = 0;
puts("请输入A~Z");
scanf("%c", &max);
if (max >= 'A' && max <= 'Z') {
m = max - 'A';
/* 输入A时 m = 0,输入B时 m = 1 …… */
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j < m - i; j++) {
printf(" ");
}
for (j = 0; j <= i; j++) {
printf("%c", 'A' + j);
}
for (j = i - 1; j >= 0; j--) {
printf("%c", 'A' + j);
}
printf("\n");
}
puts("-------------------------------------------");
for (i = 0; i <= m; i++) {
for (j = 0; j <= m + i; j++) {
if (j < m - i) {
printf(" ");
} else {
printf("%c", (char)(max - fabs(m - j)));
}
}
printf("\n");
}
puts("-------------------------------------------");
} else {
puts("输入内容有误");
}
return 0;
}
纯数学计算而已
-------------------------
哦,我这写的是你正文中的,标题那个等我写给你