问一下C语言中关于二维数组初始化的问题 在进行二维数组初始化时,可以省略行指标吗? c语言有关二维数组变量初始化

\u8bf7\u95ee\u5173\u4e8eC\u7684\u4e8c\u7ef4\u6570\u7ec4\u521d\u59cb\u5316\u95ee\u9898

\u5f53\u7136\u662f\u6b63\u786e\u7684\uff01\u53ef\u662f\u4f60\u5199\u7684\u4e0d\u6b63\u786e\u5f53\u7136\u8c03\u8bd5\u4e5f\u4e0d\u4f1a\u6b63\u786e\uff01\u4f60\u62c9\u4e86\u201c\u6570\u7ec4\u540d\u201d\u4e86\uff01\u6539\u6210\u8fd9\u6837
int a[][3]={{1,1,1},{},{1,1}};
\u8fd9\u91cc\u7701\u7565\u4e86\u884c\u6570\uff0c\u56e0\u4e3a\u540e\u8fb9\u7684\u8d4b\u503c\u53ef\u4ee5\u77e5\u9053\u5b83\u662f\u4e00\u4e2a3\u884c3\u5217\u7684\u4e8c\u7ef4\u6570\u7ec4\u3002
int a[3][3]={{1,1,1},{0,0,0},{1,1,0}};
\u8fd9\u662f\u539f\u59cb\u7684\u8d4b\u503c\u65b9\u6cd5\u3002
\u5176\u5b9e\u5c31\u662f\u4e8c\u7ef4\u6570\u7ec4\u7684\u521d\u59cb\u5316\u8d4b\u503c\u95ee\u9898\u3002\u4e66\u4e0a\u90fd\u6709\u4ecb\u7ecd\u8fd9\u91cc\u5c31\u4e0d\u591a\u8bf4\u4e86\uff0c\u81ea\u5df1\u770b\u4e66\u3002

\u4f8b\u5982\u5bf9\u6574\u578b\u4e8c\u7ef4\u6570\u7ec4a[3][2]\u8d4b\u503c
\u65b9\u6cd5\u4e00\uff1a
\u5728\u5b9a\u4e49\u7684\u540c\u65f6\u8d4b\u503c
int a[3][2]={0};//\u6240\u6709\u6570\u7ec4\u5143\u7d20\u5747\u4e3a0

\u65b9\u6cd5\u4e8c\uff1a
int a[3][2]={1,2,3,4,5,6};//\u5e38\u89c4\u7684\u8d4b\u503c\u65b9\u6cd5

\u65b9\u6cd5\u4e09\uff1a
int a[3][2]={{1,2},{3,4},{5,6}};//\u5206\u884c\u7684\u8d4b\u503c\u65b9\u6cd5

\u65b9\u6cd5\u56db\uff1a
int a[3][2]={{1,2},{0},{3}};//\u90e8\u5206\u8d4b\u503c\u65b9\u6cd5\uff0c\u7b2c\u4e00\u884c\u5143\u7d20\u7684\u503c\u5206\u522b\u4e3a1\uff0c2\uff0c\u7b2c\u4e8c\u884c\u5143\u7d20\u503c\u90fd\u662f0\uff0c
\u7b2c\u4e09\u884c\u7b2c\u4e00\u4e2a\u5143\u7d20\u503c\u4e3a3\uff0c\u7b2c\u4e8c\u4e2a\u5143\u7d20\u503c\u4e3a0

\u65b9\u6cd5\u4e94\uff1a
int a[3][2];/\u5148\u5b9a\u4e49
for(i=0;i<=3;i++) //\u7528\u53cc\u91cdfor\u5faa\u73af\u8d4b\u503c\uff0ci\uff0cj\u8868\u793a\u4e8c\u7ef4\u6570\u7ec4\u4e0b\u6807
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);

\u5e0c\u671b\u5bf9\u4f60\u6709\u6240\u5e2e\u52a9\u3002

如果全部元素的初值都已提供,则数组的第一维长度可以不指定,但第二维长度不能省略。

所以你的例子是错的
a[2][3]需要六个
a[3][3]需要九个
7不能被整除

可以,没有任何问题!

按说应该可以,你可以打印出来看看啊
for(i=0;i<9;i++)
printf("%d ",a[0][i]);
试试

1 2 3
4 5 6
7 0 0
Press any key to continue
#include <iostream>
using namespace std;
main()
{
int i,j,a[][3]={1,2,3,4,5,6,7};
for (i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
}
当为三行时 7 是第三行第一个数据 才能正常 剩余第三行数据 被初始化为0

其他情况乱码

  • C璇█涓涓粨鏋勪腑鏈浜岀淮鏁扮粍,鎴戣瀵瀹鍒濆鍖
    绛旓細鍙兘鍦ㄥ畾涔夊彉閲忕殑鏃跺鍒濆鍖栨槸姣旇緝鏂逛究鐨勶紝杩囦簡閭d釜鏉戝氨娌℃湁閭d釜搴椾簡銆備篃灏辨槸鍙兘涓涓竴涓畾涔変簡锛屽綋鐒跺鏋滄湁瑙勫緥鍙惊鐨勫氨鍙互鐢╩emset鍜宖or寰幆鐨勬潵鍋氥備絾鐪嬩綘鐜板湪鐨勯渶姹傛槑鏄炬槸鍒濆鍖栦负涓涓病瑙勫緥鐨勶紝閭e氨鍙兘涓涓竴涓祴鍊间簡銆傚垵濮嬪寲鏃跺畾涔夊彲濡備笅锛堟垜杩欓噷缁欏嚭鐨勬槸鏁扮粍涓暟涓2鐨勪緥瀛愶紝闅忎究鍙栫殑鏁板...
  • 鍏充簬C璇█浜岀淮鏁扮粍鍒濆鍖鐨闂
    绛旓細C鏄敊鐨勩俰nt a[2][3]={{1,2},{3,4},{5,6}}锛宎[2]璇存槑绗竴缁存槸2锛岃鍒濆鍖栦腑鏈墈1,2},{3,4},{5,6}鍒欒〃绀虹涓缁存槸3銆侭涓彲鐭ョ涓缁存槸2銆侱涓彲鐭ョ涓缁存槸2锛6/3璁$畻寰楀嚭銆
  • C璇█涓,濡傛灉鎴戣灏嗕竴涓浜岀淮鏁扮粍鐨勬墍鏈夊厓绱犲叏閮鍒濆鍖栦负1,鎴戝彲浠ヨ繖鏍...
    绛旓細杩欐牱褰撶劧涓嶅銆傝繖鏍风殑缁撴灉鏄彧鏈塖S[0][0]琚檮鍊间负1銆傚叾浠栧叏鏄0銆傛兂涓鏁扮粍闄勫奸厭鑽敤寰幆鍋氥傛瘮濡係S[m][n]int i,j;for锛坕=0;i<m;i++锛塮or(j=0;j<n;j++)ss[i][j]=1; 杩欐牱灏辩粰鎵鏈夊厓绱犻檮鍊间负1浜嗭紱
  • c璇█ 鎬庝箞鎶婁竴涓浜岀淮鏁扮粍鍒濆鍖栦负绌
    绛旓細void *memset(void*锛宨nt锛寀nsigned)锛涘叾涓璿oid*琛ㄧず璧峰鍦板潃锛宨nt 琛ㄧず瑕佸~鍏呯殑鍊硷紝鏈鍚庣殑unsigned琛ㄧず濉厖鐨勫瓧鑺傛暟銆備緥濡傦細include<string.h> void main(){ int a[10][20]={0}; //鏂规硶涓锛屾墍鏈鍒濆鍖栦负0 int *p[10][20]={NULL};char c[10][20]={'\0'};double b[50][200]};memse...
  • c璇█ 濡備綍鍒ゆ柇浜岀淮鏁扮粍璇存槑鍜鍒濆鍖栨槸鍚︽纭 鑰冭瘯绗旇瘯
    绛旓細鍒濆鍖栧氨鏄湪瀹氫箟鏁扮粍鐨勬椂鍊欑洿鎺ョ粰鏁扮粍璧嬪硷細浜岀淮鏁扮粍鍒濆鍖栫殑鏂瑰紡濡備笅锛歩nt a[3][4]={ {1,1,1,1},{2,2,2,2},{3,3,3,3}}; //缁欐墍鏈夌殑鏁扮粍鍏冪礌璧嬪 int a[3][4]={ 1,1,1,1锛2,2,2,2锛3,3,3,3}; //缁欐墍鏈夌殑鏁扮粍鍏冪礌璧嬪 int a[3][4]={ {1,1},{2,...
  • 澶т竴c璇█:鍏充簬瀛楃浜岀淮鏁扮粍鍒濆鍖栬祴鍊?
    绛旓細char a[100][100]锛沵emset(a, 0, sizeof(a));杩欐牱姣旇緝涓ヨ皑锛屽彲浠ョ敤printf杈撳嚭妫鏌 濡傛灉鏈夌敤锛屽笇鏈涢噰绾
  • 浜岀淮鏁扮粍鍒濆鍖:int a[][3]={{1,0,1},{},{1,1}};杩欎釜璇彞鏄笉鏄唬琛ㄧ2...
    绛旓細C璇█涓锛屼竴涓鏁扮粍涓鏋鍒濆鍖栨椂锛屽皢涓涓厓绱犺祴鍊硷紝鍏朵粬鏈寚瀹氱殑鍏冪礌閮芥槸0
  • C璇█涓,鍦ㄥ畾涔変竴涓浜岀淮鏁扮粍鐨勬椂鍊欏鍏惰繘琛鍒濆鍖,杩欑鏍煎紡鐨勫垵濮嬪寲鏄...
    绛旓細杩欎釜鏄笉姝g‘鐨勶紝浜岀淮鏁扮粍涓鑸涓缁村彲浠ヤ笉缁欏嚭锛屼絾鏄浜岀淮鏄鏄庣‘缁欏嚭鐨勶紝鍚﹀垯鏄敊璇殑銆
  • C璇█:闂竴涓楂樻墜:涓轰粈涔堣繖涓鏁扮粍鐨勫垵濮鍖栨槸閿欑殑??int a[2][]={2...
    绛旓細浜岀淮鏁扮粍瀹氫箟涓紝鑳藉鐪佺暐鐨勬槸绗竴缁寸殑瀹氫箟鏁帮紝鏁扮粍姣忚鐨勬暟鎹厓绱犳绘暟蹇呴』鎸囧畾锛屽畾涔夊彲浠ユ敼涓猴細int a[][2]={2,3,4};姝ゆ椂鍒涘缓鐨勬槸涓涓2琛2鍒楃殑鏁扮粍锛屽叾涓璦[0][0],a[0][1],a[1][0]涓変釜鏁版嵁鍏冪礌鐨勫唴瀹瑰垎鍒槸2,3,4 瑕佸紕娓呬簩缁存暟缁勫湪鍐呭瓨鐨勬帓鍒楁柟寮忥紝杩欎釜闂灏变笉闅剧悊瑙d簡銆
  • 濡備綍缁浜岀淮鏁扮粍璧嬪垵鍊0
    绛旓細杩欐牱鐨勫啓娉曪紝鑳介氱煡缂栬瘧绯荤粺锛涙暟缁勫叡鏈3琛屻傛暟缁勫悇鍏冪礌涓 0 銆0 銆3 銆0 0 銆0 銆0 銆0 0 銆10銆0 銆0 浠庢湰鑺傜殑浠嬬粛涓彲浠ョ湅鍒帮細c璇█鍦ㄥ畾涔夋暟缁勫拰琛ㄧず鏁扮粍鍏冪礌鏃堕噰鐢╝[][]杩欑涓や釜鏂规嫭寮х殑鏂瑰紡锛瀵规暟缁勫垵濮鍖栨椂鍗佸垎鏈夌敤锛屽畠浣挎蹇垫竻妤氾紝浣跨敤鏂逛究锛屼笉鏄撳嚭閿欍傜粌涓涓: 灏嗕竴涓浜岀淮鏁扮粍琛...
  • 扩展阅读:扫一扫题目出答案 ... c#二维数组详解 ... c#输入二维数组 ... c#二维数组赋值 ... 二维数组c# ... c语言求二维数组鞍点 ... c#二维数组初始化 ... c#二维数组输出4行4列 ... 输入一个二维数组并输出 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网