怎么定义一个空的二维数组

编写了个程序,书上说定义数组空的字符变量用""就行了,但是编出来后编译过不去,有没高手能告诉一下。程序如下:#include<stdio.h>#defineN5main(... 编写了个程序,书上说定义数组空的字符变量用""就行了,但是编出来后编译过不去,有没高手能告诉一下。程序如下:
#include<stdio.h>
#define N 5
main()
{
int i,j,k,m;
char a[N][N]="";
m=6;
for(i=0;i<2;i++)
{
a[i][4-i]=m;
m=m+1;
}
m=8;
for(i=3;i<N;i++)
{
a[i][4-i]=m;
m=m+1;
}
k=1;
for(i=0;i<N;i++)
{
a[i][i]=k;
k=k+1;
}
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%d",a[i][j]);
printf("\n");
}
}
展开
 我来答
xoalyg
2011-11-27 · TA获得超过4178个赞
知道大有可为答主
回答量:2356
采纳率:100%
帮助的人:2380万
展开全部
1 6
1 7
1
8 1
9 1
#include<stdio.h>

#define N 5

int main() {
int i,j,k;
char a[N][N],m;
for(i = 0;i < N;++i)
for(j = 0;j < N;++j)
a[i][j] = ' ';
m = '6';
for(i = 0;i < 2;i++) {
a[i][4 - i] = m;
m = m + 1;
}
m = '8';
for(i = 3;i < N;i++) {
a[i][4 - i] = m;
m = m + 1;
}
m = '1';
for(i = 0;i < N;i++) {
a[i][i] = m;
k = k + 1;
}
for(i = 0;i < N;i++) {
for(j = 0;j < N;j++)
printf("%c",a[i][j]);
printf("\n");
}
printf("\n");
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fameibinggan
2011-11-27 · TA获得超过206个赞
知道答主
回答量:23
采纳率:0%
帮助的人:49.1万
展开全部
可能是你漏了{},在初始化数组时,是需要加上{}的,char a[N][N]={""};
就不会出错了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Vacergh
2011-11-27 · 超过20用户采纳过TA的回答
知道答主
回答量:51
采纳率:0%
帮助的人:56.7万
展开全部
char a[N][N]; 就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式