NIEZHAOYI
Nieeee
采纳率90.5%
2016-11-12 12:24 阅读 972
已采纳

求教各位大神 下面这几行代码除去实现功能不看 有哪些编程上的硬伤(无法运行)

#include
#include
#define maxn 10
#define maxm 10
int a[maxm][maxn];
int main()
{
int m,n,a,b;
scanf("%d",&b);
memset(a,0,sizeof(a));
a[0][b-1]=1;
int m=0;
for(i=1;i<=n*n;i++,n--)
{while(m<=b&&a[m][n-1]==0) {a[m][n]=i;m++;}
m=m-1;
while(n>=1&&a[m][n-1]==0) {a[m][n]=i;n--;}
n=n+1;
while(m>=0&&a[m][n-1]==0) {a[m][n]=i;m--;}
m=m+1;
while(n+1<b&&a[m][n-1]==0){a[m][n]=i;n++;}
n=n-1;
}
for(m=1,b=1;m<=n;m++)
for(;b<=m;b++)
printf("%s",a[m][b];)
return 0;}
#这是报错代码**
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(10) : error C2664: 'memset' : cannot convert parameter 1 from 'int' to 'void *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(11) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(11) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(11) : error C2106: '=' : left operand must be l-value
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(12) : error C2086: 'm' : redefinition
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(13) : error C2065: 'i' : undeclared identifier
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(14) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(14) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(14) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(14) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(14) : error C2106: '=' : left operand must be l-value
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(16) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(16) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(16) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(16) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(16) : error C2106: '=' : left operand must be l-value
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(18) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(18) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(18) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(18) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(18) : error C2106: '=' : left operand must be l-value
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(20) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(20) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(20) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(20) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(20) : error C2106: '=' : left operand must be l-value
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(25) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(25) : error C2109: subscript requires array or pointer type
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(25) : error C2143: syntax error : missing ')' before ';'
D:\C 语言\CodeBlocks\Debug\Cpp1.cpp(25) : error C2059: syntax error : ')'
执行 cl.exe 时出错.

Cpp1.obj - 1 error(s), 0 warning(s)

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • 已采纳
    caozhy 从今以后生命中的每一秒都属于我爱的人 2016-11-12 13:17

    你想做什么,为什么全局变量叫a了,在主程序里又定义了一个a变量,这不是故意混淆么

    点赞 1 评论 复制链接分享

相关推荐