首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,请编写函数fun,其功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,请编写函数fun,其功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单
admin
2020-04-18
72
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,请编写函数fun,其功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单元中。
例如,若二维数组中的数据为
33 33 33 33
44 44 44 44
55 55 55 55
则一维数组中的内容应是:
33 44 55 33 44 55 33 44 55 33 44 55
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
void fun(int(*s)[10],int*b,
int*n,int mm,int nn)
{
}
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;
printf("The matrix:\n");
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
printf("%3d",w
[j]);
printf("\n");
}
fun(w,a,&n,3,4);
printf("The A array:\n");
for(i=0;i<n;i++)
printf("%3d",a
);
}
选项
答案
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;/*通过指针返回元素个数*/ } }
解析
题目要求实现将二维数组元素存入一维数组,需使用for循环语句来控制二维数组元素的下标,同时使用指针变量配合操作。
可以用两个循环来处理问题,由于是按列的顺序取出,所以第1个循环用于控制列下标,第2个循环用于控制行下标。
转载请注明原文地址:https://www.kaotiyun.com/show/PkCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是()。【09年3月】
以下选项中,能用作用户标识符的是()。【09年9月】
层次型、网状型和关系型数据库的划分原则是()。
有以下程序:#includeintk=5;voidf(int,*s){s=&k;*s=k:}main(){intm=3;f(&m);print
下列叙述中正确的是()。
设变量已正确定义并赋值,以下正确的表达式是()。
下面关于编译预处理命令,正确的是()。
软件需求分析阶段的主要任务是()。
在16位编译系统上,若有定义“inta[]={10,20,30},*p=a;”,当执行“p++;”后,下列说法错误的是
以下关于简单程序设计的步骤和顺序的说法中正确的是()。【10年9月】
随机试题
计算机病毒具有()性。计算机中毒后,可能会导致正常的程序无法运行,把计算机内的文件删除或受到不同程度的损坏。
链条的下垂度是反映链条装配后的松紧程度,所以要适当。( )
以食管黏膜糜烂并呈线状排列为病理特征的牛传染病是()
下列关于三阶梯镇痛原则正确的是
某孕妇,26岁,孕32周,突然阴道不自主流液4小时入院,入院后医嘱肌注地塞米松,其目的是
土地登记代理成果的审核内容中,说法有误的是()。
债务承担可以分为免责的债务承担与并存的债务承担,下列各项属于两者共同点的是( )。
公司制期货交易所股东大会会议结束之日起10日内,期货交易所应当将会议全部文件报告中国证监会。()
定量研究主要有()。
在Telnet中使用NVT的目的是()。
最新回复
(
0
)