首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,函数的功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。 例如,二维数组中的数据为: 33 33 33 33 44 44 44 44 55 55 55 55 则一
请编写函数fun,函数的功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。 例如,二维数组中的数据为: 33 33 33 33 44 44 44 44 55 55 55 55 则一
admin
2018-09-27
58
问题
请编写函数fun,函数的功能是:将M行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。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数nmm和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 void fun(int s[][10],int b[],int*n,int mm,int nn)
3 {
4 }
5 main()
6 (int w[10][10]=({33,33,33,33},(44,44,44,44},{55,55,55,55}},i,j;
7 int a[100]={0},n=0;void NONO();
8 printf(’’The matrix:\n’’);
9 for(i=0;i<3;i++)
10 {for(j=0;j<4;j++)printf(’’%3d’’,w
[j]);
11 printf(’’\n’’);}
12 fun(w,a,&n,3,4);
13 printf(’’The A array:\n’’);
14 for(i=0;i<n;i++)printf(’’%3d’’,a
);printf(’’\n\n’’);
15 NONO();}
16 void NON0()
17 {/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。 */
18 FILE *rf,*wf;int i,j,k;
19 int w[10][10],a[100],n=0,mm,nn;
20 rf=fopen(’’in.dat’’,’’r’’);
21 wf=fopen(’’out.dat’’,’’w’’);
22 for(k=0; k<5;k++) {
23 fscanf(rf,’’%d%d’’,&mm,&nn);
24 for(i=0;i<mm;i++)
25 for(j=0;j<nn;j++)fscanf(rf, ’’%d’’, &w
[j]);
26 fun(w, a, &n, mm, nn);
27 for(i=0; i<n;i++)fprintf(wf,’’%3d’’,a
);fprintf(wf,’’\n’’);
28 }
29 fclose(rf);fcloSe(wf);}
选项
答案
1 int i,j; 2 for(j=0;j<nn;j++) 3 for(i=0;i<mm;i++) 4 { b[*n]=*(*(s+i)+j); 5 *n=*n+1; }
解析
该程序功能是将M行、N列的二维数组中的数据,按列的顺序依次放到一维数组中。本题中首先要清楚数组元素在通常情况下是按行存放的,而如果要实现按列存放,其对应关系应为:s[0][0],s[1][0],s[2][0],…,s[M-1][0],s[0][1],s[1][1].…,s[M-1][N-1]。
(1)利用两重循环,依次取矩阵中的元素。
(2)注意指针数组与数组指针的区别,其中,数组指针s,它指向包含4个元素的一维数组。其数据元素的表示方式为:“*(*(s+i)+j)”。
转载请注明原文地址:https://kaotiyun.com/show/MAxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<string.h>structSTU{charname[10];intnum;};voidf(char*name,intnum){structSTU
软件的【】设计又称为总体结构设计,其主要任务是建立软件系统的总体结构。
下面程序的输出结果是()。#include"stdio.h"intsub(intm){statica=4;a+=m;returna;}voidmain(){inti=2
有如下程序:#defineN2#defineMN+1#defineNUM2*M+1#main(){inti;for(i=1;i<=NUM;i++)
数据独立性是数据库技术的重要特点之一,所谓数据独立性是指 _____。
有如下程序: main() {char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++)p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]!=’
源程序文档化要求程序应加注释。注释一般分为序言性注释和【】注释。
以下函数返回a所指数组中最小的值所在的下标值:fun(int*a,intn){inti,j=0,p;p=j;for(i=j;i<n;i++)if(a[i]<a[j])________return(p);}在下划线处应填入的是
以下程序运行时,若从键盘输入:102030<回车>,输出的结果是【】。#include<stdio.h>main(){inti=0,j=0,k=0;scanf("%d%*d%d",&i,&j,&k);
若按功能划分,软件测试的方法通常分为白盒测试方法和()测试方法。
随机试题
Shynessisthecauseofmuchunhappinessforagreatmanypeople.Shypeopleareanxiousandself-conscious;thatis,theyaree
女,54岁。感染乙肝数年,近3个月来感肝区疼痛,食欲缺乏,昨晚出现低血糖症状,今来院就诊,查体发现肝大。经检查,确诊为晚期肝癌,不宜行手术。该病人目前应首选
当单节挡烟垂壁的宽度不能满足防烟分区要求,采用多节垂壁搭接的形式使用时,卷帘式挡烟垂壁的搭接宽度不得小于()、翻板式挡烟垂壁的搭接宽度不得小于()。
《招股意向书》是缺少发行价格和数量的《招股说明书》。()
实现我国农业现代化应以()为途径。
互联网时代,手机成为人们必不可少的沟通工具,但是人们却被手机禁锢,缺少面对面沟通的机会。同学组织一次大学聚会,但是都带了手机。你作为聚会负责人,希望大家放下手机,面对面沟通,你要怎样和同学们进行沟通?
“感觉到了的东西,我们不能立刻理解它,只有理解了的东西,才能更深刻地感觉它”,这一观点说明
根据信息的来源,可将信息分为外部信息和内部信息;按照信息的用途又可分为经营决策信息、(64)和业务信息等。按信息的表示方式分为数字信息、(65)、图像信息和语言信息等。
在离市区(1)的一座立交桥上,今天(2)发生两起汽车相撞的交通事故,这两起事故(3)没有人员伤亡,但是经济(4)惨重,其中有一辆小轿车(135人(5)车翻到了立交桥下,车身受到(6)破坏。有关部门就频繁发生交通事故,(7)车辆驾驶员,一定要(8)遵守交通规
Currencyseemslikeaverysimpleidea.It’sonlymoney,afterall,andthat’sjustwhatweusetobuythethingswewantandne
最新回复
(
0
)