首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能:编写函数fun(char *s0,char *s1,char *s2,char *s3),要求实现——将s0所指字符串分解成3个字符串,分别存入s1、s2、s3所指内存中。分解的方法是,s1、s2、s3从s0中依次按顺序每隔3个字
请编写函数fun,其功能:编写函数fun(char *s0,char *s1,char *s2,char *s3),要求实现——将s0所指字符串分解成3个字符串,分别存入s1、s2、s3所指内存中。分解的方法是,s1、s2、s3从s0中依次按顺序每隔3个字
admin
2022-10-25
63
问题
请编写函数fun,其功能:编写函数fun(char *s0,char *s1,char *s2,char *s3),要求实现——将s0所指字符串分解成3个字符串,分别存入s1、s2、s3所指内存中。分解的方法是,s1、s2、s3从s0中依次按顺序每隔3个字符取1个。
例如:s0为”abcdefghij”时,分解完成后,s1、s2、s3分别为”adgj””beh””cfi”。
注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
#include<string.h>
void fun(char *s0,char *s1,char *s2,char *s3)
{
}
void main()
{
void NONO();
char s0[100],s1[40],s2140],s3[40];
printf(”请输入一行字符串\n”);
gets(s0);
fun(s0,s1,s2,s3);
puts(s1);
puts(s2);
puts(s3);
NONO();
}
void NONO()
{
FILE *fp=fopen(”out.dat”,”w”);
char s0[10][100]={”1234567890qazwsx”,”abcdefghij”,”0987654321plmokn”,”fsdjfsdlrj564342dsf”,”gfdklgjdsfl4754398”,”zxcvbnmasdfg”,”asdfghjkl123”,”qwertyuiop456”,”qweasdzxc789”,”poiuytrewqwsxqaz”};
char s1[40],s2[40],s3[40];
int i;
for(i=0;i<10;i++)
{
fun(s0
,s1,s2,s3);
fprintf(fp,”s1=%s,s2=%s,s3=%s\n”,s1,s2,s3);
}
fclose(fp);
}
选项
答案
{ char *p1=s0,*p2=s0+1,*p3:s0+2; int len=strlen(s0),i=0,j=0,k=0; while(p1<s0+len||p2<s0+len||p3<s0+len) { if(p1<s0+len) { s1[i++]=*p1; p1=p1+3; } if(p2<s0+len) { s2[j++]=*p2; p2=p2+3; } if(p3<s0+len) { s3[k++]=*p3; p3=p3+3; } } s1[i]=’\0’; s2[j]=’\0’; s3[k]=’\0’;
解析
分别定义字符指针p1,p2,p3,p1指向字符串s0的第1个字符,p2指向字符串曲的第2个字符,p3指向字符串s0的第3个字符。在while循环内,循环条件为指针p1,p2,p3指向字符串末尾,循环结束。循环内分别将指针p1,p2,p3指向的字符存放到对应的数组中,再将指针移动3个位置。最后将数组s1,s2,s3的最后一个字符赋值字符串结束标志。
转载请注明原文地址:https://kaotiyun.com/show/vRkp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是()。main(){int]]a=4,b=3,c=2,d=1;printf("%d",a>b?a:d>c?d:b);}
有以下程序#include<stdio.h>structS{inta;intb;};main(){structSa,*p=&a;a.a=99;
有三个关系R、S和T如下:其中关系T由关系R和S通过某种操作得到,该操作为()。
在数据库技术中,为提高数据库的逻辑独立性和物理独立性,数据库的结构被划分成用户级、存储级和
在下列模式中,能够给出数据库物理存储结构与物理存取方法的是()。
设有如下定义:structsk{intm;floatx;}data,*q;若要使q指向data中的m域,正确的赋值语句是()。
以下叙述中错误的是( )。
检查软件产品是否符合需求定义的过程称为()。
用树形结构表示实体之间联系的模型是
公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可有多名职员。则实体部门和职员间的联系是()。
随机试题
Ican’tunderstand______adecisionuntilitistoolate.
以下何脉不主宿食
鹅口疮的临床表现是( )。
一般而言,史学家对史料有兴趣,文学家对铺张场景、_______气氛有兴趣,司马光的《资治通鉴》,爱好文学的人读不下去;太史公写的“鸿门宴”,史学家认为_______。填入画横线部分最恰当的一项是()。
1951年12月中央决定在党政机关工作人员中开展一场()的“三反”运动。
债的免除是一种单方法律行为。()
Itiseasiertonegotiateinitialsalaryrequirementbecauseonceyouareinside,theorganizationalconstraintsinfluencewage
连编后可以脱离VisualFoxPro独立运行的程序是_______。
Vacation(休假)timecanbeassimpleasjusttimeawayfromwork.Youmayjustwantto【C1】________homeanddonothing.Thereisn
Itishardlynecessaryformetocitealltheevidenceofthedepressingstateofliteracy.ThesefiguresfromtheDepartmentof
最新回复
(
0
)