使用循环控制在c中编写程序以产生以下输出
A B C D E F G
A B C D E F
A B C D E
A B C D
A B C
A B
A
我已经写了这个使用数字的outouts倒金字塔;但是在数字的立场我想用上面显示的字母输出请帮帮我
#include <stdio.h>
int main()
{
int i, j, rows;
printf("Enter the number of rows: ");
scanf("%d",&rows);
for(i=rows; i>=1; --i)
{
for(j=1; j<=i; ++j)
{
printf("%d ",j);
}
printf("\n");
}
return 0;
}
答案 0 :(得分:0)
你可以尝试这个,只需使用char作为二元运算符,并且Increment和Decrement可以应用于chars和整数。 如果您想从用户那里获得输入,您可以使用scanf(“%c”)来读取字符并使用它们
char i,j;
for ( i = 'G'; i >= 'A'; i--) { //with G and reduce it by one to get the next ending char
for (j = 'A'; j <= i; j++) {//start with 'A' to begin every newline
printf("%c ",j);
}
printf("\n");
}
输出:
A B C D E F G
A B C D E F
A B C D E
A B C D
A B C
A B
A
答案 1 :(得分:0)
#include <stdio.h>
int main(void){
const char *A_Z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int i, j, rows;
printf("Enter the number of rows(1-26): ");
scanf("%d", &rows);
for(i = rows; i >= 1; --i){
for(j = 0; j < i; ++j){
if(j)
putchar(' ');
printf("%c", A_Z[j]);
}
putchar('\n');
}
return 0;
}