回 帖 发 新 帖 刷新版面

主题:初学!各路大侠帮帮忙!!!

#include<stdio.h>
main()
{int a,b,c,d,e;
char a1;
a1='a',e=5;
for(a=1;a<=5;a++)
{for(b=1;b<=5-a;b++)
putchar(' ');
for(c=1;c<=a;c++)
putchar(a1);
a1++';
for(d=1;d<=a;d++)
printf("%d",e);
e++;
putchar('\n');
}
}.
这个在tc上跑出的结果是
    a1
   bb22
  ccc333
 dddd4444
eeeee55555
如果想要跑出的结果是
    a1
   ab21
  abc321
 abcd4321
abcde54321
应该要怎么改?
请各位大哥大姐帮帮忙
谢谢![em1]

回复列表 (共6个回复)

沙发

#include "conio.h"
#define N 5
main()
{
 int i,j,k;
 char m;
 clrscr();
 for(i=1;i<=N;i++)
 {
   for(j=1;j<20-i;j++)
   printf(" ");
   m='a';
   for(k=1;k<=i;k++)
   printf("%c",m+k-1);
   for(j=1;j<k;j++)
   printf("%d",k-j);
   printf("\n");
 }
 getch();
}

板凳

for(k=1;k<=i;k++)
   printf("%c",m+k-1);
   for(j=1;j<k;j++)
   printf("%d",k-j);
这一段不是很明白,能否再解释一下
 谢谢!

3 楼

#include<stdio.h>
#define N 5
main()
{
int a,b,c,d;
char a1;
for(a=1;a<=N;a++)
{for(b=1;b<=N-a;b++)
putchar(' ');
a1='a';
for(c=1;c<=a;c++)
{
putchar(a1);
a1++;
}
for(d=1;d<=a;d++)
{
printf("%d",N-d+1);
}
putchar('\n');
}
getch();
}
这是修改你的程序的

4 楼

你帮我改的这个跑出来是
    a5
   ab54
  abc543
 abcd5432
abcde54321
printf("%d",k-j);
k-j;k 的负值是1;
为什么跑出的k-i不是等于0;而是等于1?

5 楼

for(d=1;d<=a;d++)
{
printf("%d",N-d+1);
}
改成
for(d=1;d<c;d++)
{
printf("%d",c-d);
}

6 楼

谢谢啊!

我来回复

您尚未登录,请登录后再回复。点此登录或注册