当前位置: 代码迷 >> C语言 >> 初学请教:数组问题...........
  详细解决方案

初学请教:数组问题...........

热度:146   发布时间:2006-06-07 22:22:00.0
初学请教:数组问题...........

有些问题实在很模糊不清,干脆还是问个明白,继续我的问题:

1.


二维数组a有m列,任一元素a[i][j]在数组中位置的公式:D 何解?

A. i*m+j B. j*m+i C. i*m+j-1 D. i*m+j+1


2.

a .语句 char a[]="xyzuvwijk"; int k;

当k=2,a[k]= 答案是y还是z??因为是字串所以a[2]+1 ??

b.语句 char a[7]="abcdef"; char b[4]="ABC";

strcpy(a,b); printf("%c",a[5]) 结果是: 因为是字串所以结果要+1??


3.

语句 a[i++]=b[++j]和i++=++j的作用一样吗?也就是将++j的值赋给i???


4.

两个字符数组a,b,正确的输入语句是:


      A. scanf("%s%s",a,b) B. scanf("%s%s",&a,&b)

             数值型数组答案一样吗?

5.

 程序段:char a[3],b[]="China";
a=b;
printf("%s",a); 运行后结果为:


(此题如果我把 a[3]改为a[6]呢?答案是不是China)

6.

   程序段:main()

{ int a[6][6],i,j;
for(i=1;i<6:i++)
for(j=1;j<6;j++)
a[i][j]=(i/j)*(j/i);
for(i=1;i<6:i++)
for(j=1;j<6;j++)
printf("%2d",a[i][j]);
printf("\n")}

A.11111 B.10000
11111 01000
11111 00100
11111 00010
11111 00001

7.

程序段输出是两个字符串对应相等的字符:

char x[]="prograqmming";
char y[]="Fortran";
int i=0;
while (x[i]!='/0'&&y[i]='/0')
if (x[i]==y[i]) printf("%c",________);
else i++;


A. x[i++] B. y[++i] C. x[i] D. y[i]

搜索更多相关的解决方案: 初学  

----------------解决方案--------------------------------------------------------


二维数组a有m列,任一元素a[i][j]在数组中位置的公式:

A. i*m+j B. j*m+i C. i*m+j-1 D. i*m+j+1

答:只要有理,选A或D都成。

选A的道理:int a[9][10],*pa=a[0];
则a[i][j]与pa[i*10+j]等价。
选D的道理:a[i][j]是a家族中第i*10+j+1个成员。因为口语1算老大而不是0。


----------------解决方案--------------------------------------------------------

谢了,再帮我看看其他的.....

自力更生为主,寻求外援为辅。No way......


----------------解决方案--------------------------------------------------------
其实我认为你应该把这题拿到机子上运行一下就行了哈
----------------解决方案--------------------------------------------------------
了解,至少帮我解决6和7,只知道答案不知道其方法以后碰到了不也是不明不白的嘛~~~~
----------------解决方案--------------------------------------------------------

程序段输出是两个字符串对应相等的字符:

char x[]="programming";
char y[]="Fortran";
int i=0;
while (x[i]!='\0'&&y[i]!='\0')
if (x[i]==y[i])printf("%c",x[i++]);
else i++;

A.x[i++] B.y[++i] C.x[i] D.y[i]

请楼主MM回答: 上述程序段的运行结果是什么?
答对了就再帮你一题


----------------解决方案--------------------------------------------------------
我不好意思直接回答您,怕版主怪罪!
第6题提示:当a<b时(a,b都是int)a/b==0
剩下的您自己动手算.
----------------解决方案--------------------------------------------------------
呵呵 第二题 还是明白点的

数组 里面是从 0 开始的 比如 a[]={asdf} 那a[0]=a a[1]=s ...

是吧 各位 呵呵
----------------解决方案--------------------------------------------------------

第四题

不加&的是 表示这个数 加了 就是 打出他的 内存地址了

哦 对吧 五角星 嘿嘿


----------------解决方案--------------------------------------------------------

引用楼主: 
程序段:char a[3],b[]="China";
a=b;
printf("%s",a); 运行后结果为:


(此题如果我把 a[3]改为a[6]呢?答案是不是China)

刚才没看到这题,您确定这题能运行


----------------解决方案--------------------------------------------------------
  相关解决方案