当前位置: 首页 > 计算机 > 问题详情
问题

请编写函数fun() 该函数的功能是将M行N列的二维数组中的数据 按列的顺序依次放到一维数组中。 例

请编写函数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[i] [j];

cout<<endl;

}

fun(w, a, &n, 3, 4);

cout<<"The A array:\n";

for(i=0; i<n; i++)

cout<<a[i];

cout<<"\n\n";

}

发布时间:2024-05-06
参考答案

正确答案:void fun (int(*s)[10]int *b int *n int mm int nn) { int ij; for(j=0;jnn;j++) for(i=0;imm;i++) {b[*n]=*(*(s+i)+j);*n=*n+1; } }
void fun (int(*s)[10],int *b, int *n, int mm, int nn) { int i,j; for(j=0;jnn;j++) for(i=0;imm;i++) {b[*n]=*(*(s+i)+j);*n=*n+1; } } 解析:一个二维数组的存储可以理解为按行进行存储的—个—维数组,但本题中的二维数组要求按列进行存储。根据在主函数中的调用情况,可以看出,指针数组s[10]实质上是用来存放二维数组中各行的首地址,b是用来存放最终二维数组按列处理完毕后的一个一维数组,第3个参数之所以要用“&n”,目的是为了能在函数中直接改变其值。

相关问题
  • 给定关系R(A1 A2 A3 A4 A5)上的函数依赖集F={A1→A2A5

    给定关系R(A1,A2,A3,A4,A5)上的函数依赖集F={A1→A2A5,A2→A3A4,A3→A2},R的候选关键字为()。函数依赖()∈F+。A A1B A1A2C

    答案解析
  • 以下关于脚本语言的叙述中 正确的()。A.脚本语言是通用的程序

    以下关于脚本语言的叙述中,正确的()。A 脚本语言是通用的程序设计语言B 脚本语言更适合应用在系统级程序开发中C 脚本语言主要采用解释方式实现D 脚本

    答案解析
  • 引用调用方式下进行函数调用 是将()。 A.实参的值传递给形参

    引用调用方式下进行函数调用,是将()。A 实参的值传递给形参B 实参的地址传递给形参C 形参的值传递给实参D 形参的地址传递给实参请帮忙给出正确答案和

    答案解析
  • 假设某公司生产的某种商品的销售量N是价格P的函数:N=7500-50P

    假设某公司生产的某种商品的销售量N是价格P的函数:N=7500-50P, 10<P<150;成本C是销售量N的函数:C=25000+40N;销售每件商品需要交税10元。据此,每件

    答案解析
  • 在Excel中 单元格A1中的值为2014-5-24 若在A2单元格中输入日

    在Excel中,单元格A1中的值为2014-5-24,若在A2单元格中输入日期函数“=DAY(A1)”,按回车键后,则A2单元格中的值为()。A 2014-5-24B 2014C 5D 24请帮

    答案解析
  • 在Excel中 若A1 A2 B1 B2单元格中的值分别为100 50 30 20

    在Excel中,若A1、A2、B1、B2单元格中的值分别为100、50、30、20,在B3单元格中输入函数“=IF(A1

    答案解析
  • 在Excel中 单元格A1 B1单元格中的值分别为80 35 在A2单元格

    在Excel中,单元格A1、B1单元格中的值分别为80、35,在A2单元格中输入函数“=IF(and(A1>70,B1>30),“及格”,“不及格”)”,按回车键,则A2单元格中的值为

    答案解析
  • 在Excel2003中 可用于计算表格中某一数值列平均值的函数是()

    在Excel2003中,可用于计算表格中某一数值列平均值的函数是()。A Average()B Count()C Abs()D Total()请帮忙给出正确答案和分析,谢谢!

    答案解析
  • 递归函数执行时 其调用和返回控制是利用()来进行的。 A.栈

    递归函数执行时,其调用和返回控制是利用()来进行的。A 栈 B 对列 C 数组 D 树请帮忙给出正确答案和分析,谢谢!

    答案解析
  • 在Excel中 A1单元格中的值为information 若在A2单元格中输入文

    在Excel中,A1单元格中的值为information,若在A2单元格中输入文本函数“=RIGHT(A1,4)”,按回车键后,则A2单元格中的值为()。A infoB ormaC tionD rm

    答案解析

最新问题

Copyright © 2016-2023 114题库网(114158.com)All Rights Reserved.  免责声明 豫ICP备19007809号-5