猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
哪位大神告诉我错误到底错在哪里,谢谢了
黄Yellow
浏览 1549
回答 4
4回答
慕粉13202587281
定义数组时,如果你没有初始化,元素个数是要申明的,int a[10]; char ch[2][20];这个样子才行
1
0
0
_dark
首先,你截图的不是全屏,也没有说明语言,提问的题目也很不友好(问题描述不清楚),应提问如:X语言代码报错,找不到错误然后,从代码看出这是C,语法不允许这样定义变量:ch[][],应明确标明数组大小,如:ch[2][2]最后,报错是因为你对转义字符理解不够,不是因为变量定义的问题,因为你的变量没有用,printf函数中字符串中的转义字符‘%d’是整型占位符,接收的是变量值,不是指针,这是我猜测的错误,根据那条不完整的编译器报错,因为你没说明score数组是一维还是二维,代码截的太短‘%s’是字符串占位符,接收指针,而你传入的是变量值,在你先将二维数组ch的错误改正并给其赋值后,可以这样写来获取字符串:‘ch[i]’即二维数组中的字符串的地址全手打,请认真阅读,谢谢,不懂再问
1
0
0
眼前的黑不是黑zz
printfscore函数里面的第二行char ch[][],这样是不行的,第一个[]里面可以省略,第二个[]里面不可以省略比如声明一个二维数组:int str[][3]={{1,2,3},{4,5,6},{7,8,9}}; //这样声明可以的
1
0
2
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续