首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数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
2019-09-02
60
问题
请编写函数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中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#inolude<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;void NONO();
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
);printf("\n\n’);
NONO();}
VOid NONO()
{/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。 */
FTLE*rf,*wf;int i,j,k;
int w[10][10],a[100],n:0,mm,nn;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(k=0; k<5; k++) {
fscanf(rf,"%d%d",&mm,&nn);
for(i=0;i<mm;i++)
for(j=0;j<nn;j++)fscanf (rf, "%d", &w
[j]);
fun(w,a,&n,mm,nn);
for(2=0;i<n;i++) fprintf(wf,"%3d",a
);fprintf(wf,"\n");
}
fclose(rf); fclose(wf); }
选项
答案
inti,j; for(j=0;j<nn;j++) for(i=0;i<mm;i++) {b[*n]=*(*(s+i)+j); *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/6ORp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。例如:b所指变量t中的学号、姓名、和三门课的成绩依次是:10002、"ZhangQi"、9
以下选项中不能用作C程序合法常量的是
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
有以下程序#includevoidfun(char*a,char*b){while(*a==’*’)a++;while(*b=*a){b++;a++;}}main(){char*s="*a*b*",t[
若有以下程序,编译时出现错误,你认为出错的是#includemain(){inta=0,b=0,c=0,d;c=(a+=b,,b+=A)/*第4行*/d=c;;/*第5行*/;/*第6行*/printf("%d,%d,%d\n",a,b
有以下程序main(){inta=1,b=2,c=3,x;x=(a^b)&c;’printf("%d\n",x);}程序的运行结果是
以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是
有以下程序main(){intx=1,y=0;if(!x)y++;elseif(x==0)if(x)y+=2;elsey+=3;printf("%d\n",y);}程序运行后的输出结果是
有两个关系R和S如下: 则由关系R得到关系S的操作是
设数据集合为D={1,3,5,7,9},D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是()。
随机试题
教学工作的中心环节是()。
以下哪种诊断方法,不能确诊黑热病现症病人
某单位有两个工程建设项目分别进行招标。两个项目的特点见表4-4。[2011年真题]【问题】1.根据每个项目的特点。为每个项目分别选择一种适宜的评标方法(有关评标办法表示如下:A:综合评估法;B:经评审的最低投标价法)。2.分别说明所选评标方法的特点
在社会主义市场经济条件下,宏观经济调控的主要目标是:促进经济增长,增加就业,(),保持国际收支平衡。
甲、乙订立合同后,甲与丙串通以明显不合理低价转让给丙2套重要设备,使得合同难于履行,给乙造成了损害。此时,乙有权请求人民法院()。
钢一混凝土组合梁混凝土桥面应全断面连续浇筑,以下浇筑顺序正确的是()。
按照解释尺度不同,税法解释可以分为()。
农村资金互助社的资金不得用于()。
Thetechnologyindustryisatwaroverintellectualproperty.OnMay7ththefirst【C1】______ofathree-partfightbetweenOracle
OurplanetEarthis4,600millionyearsold.Ifwereduce【M1】______thisinconceivabletime-spanintoanunderstandablecon
最新回复
(
0
)