首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,请编写函数fun,其功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,请编写函数fun,其功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单
admin
2020-04-18
42
问题
使用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://kaotiyun.com/show/PkCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#include#includestructA{inta;charb[10];doublec;};voidf(structAt);main(){structA
有下列程序:#includemain(){FILE*fp;intk,n,a[6]={1,2,3,4,5,6};fp=fopen("d2.dat","w");fprintf(fp,"%d%d%d\n",a[
设有定义:intx=2;以下表达式中,值不为6的是
以下选项中,能用作用户标识符的是()。【09年9月】
以下叙述中错误的是()。
有以下程序:#includemain(){FILE*fp;inta[10]={1,2,3},i,n;fp=fopen("d1.dat","w");for(i=0;i<3;i++)fprintf(fp,"%d",a[i]);fprintf(
有如下定义:struct{intnum;charname[10];struct{inty;intm;intd;}birth;}s,*ps=&s;以下对内嵌结构体成员的引用形式错
给定程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:部分源程序给出如下。不得增行或删行
请编写函数fun,其功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。例如,若字符串数组中的M个字符串为{“AAAA”,“BBBBBBB”,“CC”},则合并后的字符串内容应该是“AAAABBBBBBBC
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。
随机试题
Suchanerror______thiscanbeavoided,ifyoupaycloseattentiontoit.
风湿性心脏瓣膜病的主要病因是()
以下关于分部工程及分部工程验收的说法,正确的是()。
下列关于金融资产的后续计量的表述中,正确的有()。
曾经被一条大狗咬过的人,看见非常小的狗也可能产生恐惧。这是()。
中国梦是强国梦,民族振兴梦,更是人民幸福梦。只有把国家富强、民族振兴的宏大主题落实到改善人民生活,提升幸福感等具体感知上,让人民群众有实实在在的获得感,国家才能拥有取之不尽的发展保障,民族才能拥有无比强大的力量。根据上述内容可以推出的是:
计算D2n=,其中未写出的元素都是0。
有以下程序:#includemain(){charstr[12]={’s’,’t’,’r’,’I’,’n’,’g’};printf("%d\n",strlen(str));}程序运行后
Readthearticlebelowaboutstartingupnewventures.ChoosethebestwordtofilleachgapfromA,B,CorDonthenextp
A、Therewillbemorepeopleintherestaurantatdinnertime.B、Therearefewerpeoplethanusual.C、Theydon’thaveanylunchs
最新回复
(
0
)