数组和for循环
9.以下程序运行时输出结果中第-行是(9),第三行是(10)。#include<stdio.h>defineN5voidmain(){staticchara[N][N];...
9.以下程序运行时输出结果中第-行是 (9) ,第三行是(10) 。
#include<stdio.h>
define N 5
void main()
{ static char a[N][N];
int i,j,t,start=0,end=N-1;
char str[]="123",ch;
for(t=0;t<=N/2;t++)
{ ch=str[t];
for(i=j-start;i<end;i++)a[i][j]=ch;
for(j=start;j<end;j++)a[i][j]=ch;
for(i=end;i>start;i--)a[i][j]=ch;
for(j=end;j>start;j--)a[i][j]=ch;
if(start==end) a[start][end]=ch;
start++,end--;
}
for(i=O;i<N;i++)
{ for(j=0;j<N;j++)
printf("%c",a[i][j]);
printf("\n");
}
}
答案为什么是11111 12321?
程序肯定没错误,这是2009春江苏二级C的原题,不信可以去看。 展开
#include<stdio.h>
define N 5
void main()
{ static char a[N][N];
int i,j,t,start=0,end=N-1;
char str[]="123",ch;
for(t=0;t<=N/2;t++)
{ ch=str[t];
for(i=j-start;i<end;i++)a[i][j]=ch;
for(j=start;j<end;j++)a[i][j]=ch;
for(i=end;i>start;i--)a[i][j]=ch;
for(j=end;j>start;j--)a[i][j]=ch;
if(start==end) a[start][end]=ch;
start++,end--;
}
for(i=O;i<N;i++)
{ for(j=0;j<N;j++)
printf("%c",a[i][j]);
printf("\n");
}
}
答案为什么是11111 12321?
程序肯定没错误,这是2009春江苏二级C的原题,不信可以去看。 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询