首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写一个函数void fun(char a[],char b[],int n),其功能是:删除一个字符串中指定下标的字符。 其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。 例如,输入一个字符串:World,
请编写一个函数void fun(char a[],char b[],int n),其功能是:删除一个字符串中指定下标的字符。 其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。 例如,输入一个字符串:World,
admin
2020-06-16
32
问题
请编写一个函数void fun(char a[],char b[],int n),其功能是:删除一个字符串中指定下标的字符。
其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。
例如,输入一个字符串:World,然后输入3,则调用该函数后的结果为:Word。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
#include<string.h>
#defitie LEN 20
void fun(char a[],char b[],int n)
{
}
main()
{ char str1[LEN],Str2[LEN];
int n ;
void NONO ();
printf("Enter the string:\n");
gets(str1);
printf("Enter the position of the string deleted:¨);
scan f("%d¨, &n);
fun(str1, str2, n);
printf("The new string is:%s\n",Str2);
NONO();
}
void NONO ()
{/*本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
char str1[LEN], str2[LEN] ;
int i, n ;
FILE *rf, *wf;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0 ; i<10 ; i++) {
fscanf(rf, "%s %d", str1, &n);
fun(str1, str2, n);
fprintf(wf, "%s\n",Str2);
}
fclose(rf);
fclose(wf);
}
选项
答案
int p,m=0; for(p=0;p<LEN;p++) if(p!=n) //如果字符下标不满足题目要求的标志n { b[m]=a[p]; //原始串的字符赋值给新串b m++: } b[m]=’\0’; //新串末尾加上结束符
解析
进入fun函数,根据前面的分析:
通过循环,对字符串a中各字符逐个考查,若该字符串下标p不等于输入的标志位n,那么就顺序放到新串b中,否则就不存放。
最后,对所有字符处理完后,要注意的就是在新字符串b的末尾加上串结束符’\0’。
转载请注明原文地址:https://kaotiyun.com/show/4iCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下叙述中正确的是
有以下程序,程序运行后的输出结果是#includemain(){inta=3;printf("%d\n",(a+=a-=a*a));}
以下选项中,能正确进行字符串赋值的是
有以下程序#include#includevoidfun(chars[][10],intn){chart;inti,j;for(i=0;i
以下选项中可用作C程序合法实数的是
以下是if语句的基本形式:if(表达式)语句其中“表达式”
一般情况下,当对关系R和S进行自然连接时,要求R和S含有一个或者多个共有的()。
下列给定程序是建立一个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。请改正函数fun中的错误,使它能得出正确的结果。注意:部分源程序在文件MO
数据库系统中完成查询操作使用的语言是()。
结构化程序设计的基本原则不包括
随机试题
彩色多普勒血流成像在检测腹部血流时,常有彩色信号闪烁现象,如何减轻或消除这些干扰()
依据病理变化,急性心包炎可以分为
制作PFM冠桥时,构筑遮色瓷的作用是下列哪些
白芍的主治病证不包括
幼儿记忆发展的特点不包括()。
Iamdiscoveringthatmanypeoplewant,aboveallelse,tolivelifefully.Butsometimesthepastprohibitsourlivingandenjo
设有一个栈与一个队列的初始状态均为空。现有一个序列A,B,C,D,E,F,G,H。先分别将序列中的前4个元素依次入栈,后4个元素依次入队;然后分别将栈中的元素依次退栈;再将队列中的元素依次退队。最后得到的序列为
下列关于控件的叙述中,正确的是()。
WhatdoesTomusuallyhaveforlunch?
A、BecausetheEarthisheavilypolluted.B、Becausenaturecannotrecycleitsresources.C、Becausemoreandmorepeopleliveont
最新回复
(
0
)