首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。 例如,字符串数组中的M个字符串为 AAAA BBBBBBB CC 则合并后的字符串的内容应是: A
请编写函数fun,函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。 例如,字符串数组中的M个字符串为 AAAA BBBBBBB CC 则合并后的字符串的内容应是: A
admin
2017-07-27
66
问题
请编写函数fun,函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。
例如,字符串数组中的M个字符串为
AAAA
BBBBBBB
CC
则合并后的字符串的内容应是:
AAAABBBBBBBCC。
提示:strcat(a,b)的功能是将字符串b复制到字符串a的串尾上,成为一个新串。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #include<string.h>
3 #define M 3
4 #define N 20
5 void fun(char a[M][N],char *b)
6 {
7
8 }
9 main()
10 { char w[M][N]={’’AAAA’’,’’BBBBBBB’’,’’CC’’},a[100];
11 int i;void NONO();
12 printf(’’The string:\n’’);
13 for(i=0 ; i<M;i++)puts(w
);
14 printf(’’\n’’);
15 fun(w,a);
16 printf(’’The A string:\n’’);
17 printf(’’%s’’,a);printf(’’\n\n’’);
18 NONO();
19 }
20 void NONO()
21 {/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
22 FILE *rf,*wf ;
23 char w[M][N],a[100];int i;
24 rf=fopen(’’in.dat’’,’’r’’);
25 wf=fopen(’’out.dat’’,’’w’’);
26 for(i=0;i<10;i++) {
27 fscanf(rf,’’%s%s%s’’,w [0],w[1], w [2]);
28 fun(w,a);
29 fprintf(wf,’’%s\n’’,a);
30 }
31 fclose(rf);fclose(wf);
32 }
选项
答案
1 int i,j,k=0; 2 for(i=0 ; i<M ; i++) 3 { for(j=0 ; j<N; j++) 4 i f(*(*(a+i)+j)) 5 //如果不指向行的尾 6 { b[k]=*(*(a+i)+j); 7 //将行中的值赋值给数组b 8 k++;}//数组下标加1 9 else//如果指向尾,则跳出这一行 10 break; 11 b[k]=’\0’;}//数组加尾符
解析
(1)二维字符数组第i行j列元素a
[j],就是指针形式的“*(*(a+i)+j)”。因此,如果字符“*(*(a+i)+j)”是串的结束符,则说明该字符串已经结束。
(2)当一维字符数组存放完字符串中各字符后,必须在一维字符数组的尾字符处加一个结束符“’\0’”,才能把字符数组变成字符串。否则,字符数组就只能是非字符串的一般字符数组。
转载请注明原文地址:https://kaotiyun.com/show/J7Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列选项中,不能作为合法常最的是()。
以下程序的运行结果是()。#defineS(x)x*xmain(){intk=1;while(k<=4){printf("%d,",S(k));k++;}
在C语言中,变量的隐含存储类别是()。
在结构化方法中,用数据流程图(DFd)作为描述工具的软件开发阶段是()。
下面函数的功能是()。sss(s,t)char*s,*t;{while(*s);while(*t)*(s++)=*(t++);returns;}
有以下函数定义:intfun(doublea,doubleB){returna*b;}若以下选项中所用变量都已正确定义并赋值,错误的函数调用是()。
二叉树的遍历可以分为三种:前序遍历、()遍历和后序遍历。
以下程序的输出结果是【】。#inculde#inculde#inculdemain(){char*P,*q,*r;P=q=r=(char*)malloc(sizeof(char)*20):
队列是限定在表的一端进行插入和在另一端进行删除操作的线性表。允许删除的一端称作_____________。
栈和队列的共同特点是()。
随机试题
管涵通常采用工厂预制钢筋混凝土管的成品管节,管节断面形式分为()等。
【B1】【B4】
患者缘自2周余以前诱因不明开始出现咳嗽,阵发性发作,干咳少痰,体力下降,伴右胸隐痛,咳嗽及深呼吸时明显,午后发热,不伴畏寒寒战,夜间汗多。体格检查体温:37℃,呼吸:20次/分,脉搏:86次/分,血压:110/60mmHg。肺结核的治疗往往需要长时间联
创造一种畅所欲言、自由思考的氛围,诱发人创造性思维的共振和连锁反应,这是经营决策方法中的()。
附认股权证债券筹资与资本成本、债券价值、股权再融资的综合F公司是一家经营电子产品的上市公司。公司目前发行在外的普通股为10000万股,每股价格为10元,预计未来可持续增长率为13.43%。公司现在急需筹集资金16000万元,用于投资液晶显示屏项目
总效用和边际效用的关系()。
教育法律关系的()是教育法律关系的组成要素之一,指的是教育法律关系的主体依据法律规定而享有的权利与义务。
新教师更多关注课堂中发生的细节,专家型教师则很少谈论课堂管理问题和自己教学是否成功。这反映二者在()方面存在差异。
A、 B、 C、 D、 D外表面图只有两个白色的面,而且是相对的,所以折叠后不可能有两个白色的面相邻,可排除A、C;并且在相交的三个面中,至少有一面是白色的,可排除B,所以选D。
Lifeisfullofdangersandsurprises.Yourhousemayburn【C1】______.Youmayfalloutofthewindowand【C2】______yourneck.Mic
最新回复
(
0
)