c++字母输出金字塔, 如,输入C 输出: A ABA ABCBA 依次类推,其中space为自定义变量,即控制空格输出,
在下面程序基础上该正,有点毛病#include<stdio.h>#include<math.h>intmain(){charx,k,M;scanf("%c",&x);in...
在下面程序基础上该正,有点毛病
#include<stdio.h>
#include<math.h>
int main()
{
char x,k,M;
scanf("%c",&x);
int space;
scanf("%d",&space);
int N=x-64;
int i,j;
for(i=1;i<=N;i++)
{
for(j=1;j<=N+space-i;j++)
printf(" ");
for(j=1,k=65,M=65;j<=2*i-1;j++)//控制行输出,第一行输出一个字母,第二行3个,第n行2*n-1个
if (k<=x) //就是这个地方,求高手改正
{
printf("%c",k++);
M++;
}
else
printf("%c",--M-1);
printf("\n");
}
return 0;
} 展开
#include<stdio.h>
#include<math.h>
int main()
{
char x,k,M;
scanf("%c",&x);
int space;
scanf("%d",&space);
int N=x-64;
int i,j;
for(i=1;i<=N;i++)
{
for(j=1;j<=N+space-i;j++)
printf(" ");
for(j=1,k=65,M=65;j<=2*i-1;j++)//控制行输出,第一行输出一个字母,第二行3个,第n行2*n-1个
if (k<=x) //就是这个地方,求高手改正
{
printf("%c",k++);
M++;
}
else
printf("%c",--M-1);
printf("\n");
}
return 0;
} 展开
2个回答
展开全部
问题不大,就那个条件稍改下就OK了
#include<stdio.h>
#include<math.h>
int main()
{
char x,k,M;
scanf("%c",&x);
int space;
scanf("%d",&space);
int N=x-64;
int i,j;
for(i=1;i<=N;i++)
{
for(j=1;j<=N+space-i;j++)
printf(" ");
for(j=1,k=65,M=65;j<=2*i-1;j++)//控制行输出,第一行输出一个字母,第二行3个,第n行2*n-1个
if (k<= (64 + i)) //就是这个地方,求高手改正只需要 输出到该输出的字母就行,不需要到最大字母X
{
printf("%c",k++);
M++;
}
else
printf("%c",--M-1);
printf("\n");
}
return 0;
}
#include<stdio.h>
#include<math.h>
int main()
{
char x,k,M;
scanf("%c",&x);
int space;
scanf("%d",&space);
int N=x-64;
int i,j;
for(i=1;i<=N;i++)
{
for(j=1;j<=N+space-i;j++)
printf(" ");
for(j=1,k=65,M=65;j<=2*i-1;j++)//控制行输出,第一行输出一个字母,第二行3个,第n行2*n-1个
if (k<= (64 + i)) //就是这个地方,求高手改正只需要 输出到该输出的字母就行,不需要到最大字母X
{
printf("%c",k++);
M++;
}
else
printf("%c",--M-1);
printf("\n");
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询