首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun(),该函数的功能是将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。 例如:二维数组中的数据为 33333333 44444444 55555555 则一维数组中的内容应是 334455334
请编写函数fun(),该函数的功能是将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。 例如:二维数组中的数据为 33333333 44444444 55555555 则一维数组中的内容应是 334455334
admin
2010-02-08
20
问题
请编写函数fun(),该函数的功能是将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。
例如:二维数组中的数据为
33333333
44444444
55555555
则一维数组中的内容应是
334455334455334455334455。
注意:部分源程序以存在文件test_2.cpp中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
文件test39_2.cpp的内容如下:
#include<stdio.h>
#include<iostream.h>
void fun(int(*s) [10],int *b, int *n,int mm,int nn)
{
}
void main( )
{
int w[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;
int a[100]={0}, n=0;
cout<<"The matrix:\n"
for(i=0; i<3; i++)
{
for(j=0; j<4; j++
cout<<w
[j];
cout<<endl;
}
fun(w, a, &n, 3, 4);
cout<<"The A array:\n";
for(i=0; i<n; i++)
cout<<a
;
cout<<"\n\n";
}
选项
答案
void fun (int(*s)[10],int *b, int *n, int mm, int nn) { int i,j; for(j=0;j<nn;j++) for(i=0;i<mm;i++) {b[*n]=*(*(s+i)+j);*n=*n+1; } }
解析
一个二维数组的存储可以理解为按行进行存储的—个—维数组,但本题中的二维数组要求按列进行存储。根据在主函数中的调用情况,可以看出,指针数组s[10]实质上是用来存放二维数组中各行的首地址,b是用来存放最终二维数组按列处理完毕后的一个一维数组,第3个参数之所以要用“&n”,目的是为了能在函数中直接改变其值。
转载请注明原文地址:https://kaotiyun.com/show/L7ID777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
试析斯巴达的政治制度与社会结构的内容及其成因。(北京师范大学2001年世界史真题;华中师范大学2003年世界古代史真题)
试析李悝变法的内容及其意义。(厦门大学2000年中国古代史真题)
要求被试在识记材料后,尽量将识记的全部项目再现出来,以此确定感觉记忆的保存量,称为()。
如果一组数据完全平衡,那么这组数据的离均差的总和为()
一位教育学教师让每个学生报告他们用于准备考试的时间和考试时答错的题目数:忽略样本容量的问题,解释两种相关系数的大小为何有差异,在上述数据中,你认为哪种更准确地反映了数据的关系?
下列选项中不是乌申斯基主张的教学原则是
于1872年颁布,规定6~14岁的8年初等教育为强迫义务教育阶段的法案是
20世纪60年代,英国()建议应为所有在能力和成绩方面合格的,并愿意接受高等教育的人提供高等教育课程,为此英国兴办了许多大学。
关于教育目的与教育方针,下列说法错误的是
随机试题
反对权力分立的思想家是
在Lambert-Beer吸收定律中I=I0e-μd,其中I0为
带下过少的主要病机是
不用任何导管,将造影剂直接注入检查部位的造影是
患者血清嗜异性凝集试验滴度为1:224,用豚鼠肾吸收后为1:56,用牛红细胞吸收后为0,可以辅助诊断
症见面色无华,眩晕,夜寐多梦,两目干涩,肢体麻木不仁,筋肉晌动,脉细舌淡的病机是
下列存货发出的计价方法中,能使期末存货的账面余额与市价的相关性最大的是()。
下列收入应计入我国GDP的有()。
保险诈骗罪
______isNOToneof"TheGraveyardPoets".
最新回复
(
0
)