Nieeee 2016-11-12 12:24 采纳率: 90.5%
浏览 979
已采纳

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

#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条回答 默认 最新

  • threenewbee 2016-11-12 13:17
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog