C语言请教一下写法
答案:2 悬赏:20 手机版
解决时间 2021-04-07 02:48
- 提问者网友:世勋超人
- 2021-04-06 21:35
C语言请教一下写法
最佳答案
- 五星知识达人网友:鱼忧
- 2021-04-06 22:57
上面的if...,for...等等不加花括号没有问题,但是开头的,看下面:
extern int SZ;
extern int CHPM[SZ][SZ];
extern int CHPE[SZ][SZ];
extern int CPR[SZ][SZ];
这绝对是错误的,因为数组的维数一定是常量,在编译时就决定了的,因为编译时要分配存储
空间,如果维数是运行时才知道的,那编译器怎么知道要分配多少存储空间?我虽然没有试,
但我有把握,那一定是错的。等你环境好了,你亲自试一下吧!如果没有问题一定要告诉我,
谢谢你!追问我在手机上试了,貌似可以啊追答你把代码贴出来看看
extern int SZ;
extern int CHPM[SZ][SZ];
extern int CHPE[SZ][SZ];
extern int CPR[SZ][SZ];
这绝对是错误的,因为数组的维数一定是常量,在编译时就决定了的,因为编译时要分配存储
空间,如果维数是运行时才知道的,那编译器怎么知道要分配多少存储空间?我虽然没有试,
但我有把握,那一定是错的。等你环境好了,你亲自试一下吧!如果没有问题一定要告诉我,
谢谢你!追问我在手机上试了,貌似可以啊追答你把代码贴出来看看
全部回答
- 1楼网友:英雄的欲望
- 2021-04-07 00:18
这样不可以 里面的if语句错误 不是比较运算符 是赋值运算
if (CHPM[x][y] = 1) CHPM[x][y]赋值为1 那么就是 if(1)它总为true 所以下面的else 语句不会执行
其他的没看出你想要的功能 有没有其他问题不好说
if (CHPM[x][y] = 1) CHPM[x][y]赋值为1 那么就是 if(1)它总为true 所以下面的else 语句不会执行
其他的没看出你想要的功能 有没有其他问题不好说
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯