首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写函数fun,函数的功能是:从s所指的字符串中删除给定的字符。同一字母的大、小写按不同字符处理。 若程序执行时输入字符串为:turbo c andborlaM c++ 从键盘上输入字符:n,则输出后变为:turbo c ad borlad
编写函数fun,函数的功能是:从s所指的字符串中删除给定的字符。同一字母的大、小写按不同字符处理。 若程序执行时输入字符串为:turbo c andborlaM c++ 从键盘上输入字符:n,则输出后变为:turbo c ad borlad
admin
2013-04-02
17
问题
编写函数fun,函数的功能是:从s所指的字符串中删除给定的字符。同一字母的大、小写按不同字符处理。
若程序执行时输入字符串为:turbo c andborlaM c++
从键盘上输入字符:n,则输出后变为:turbo c ad borlad C++
如果输入的字符在字符串中不存在,则字符串照原样输出。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#include
void fun(char s[],char c)
{
}
s
=’\0’;
}
NONO()
{
/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */
FILE *rf, *wf ;
char s[81], ch, w ;
int len ;
rf = fopen("in.dat","r");
wf = fopen("out.dat","w");
fgets(s, 80, rf);
fscanf(rf, "%c", &ch);
len = strlen(s) - 1 ;
w = s[len] ;
if(w == ’\n’ || w == 0x1a) s[len] = 0 ;
fun(s, ch);
fprintf(wf, "%s", s);
fclose(rf);
fclose(wf);
}
main()
{
static char str[]="turbo c and borland c++";
char ch;
printf("原始字符串:%s\n", str);
printf("输入一个字符:");
scanf("%c",&ch);
fun(str,ch);
printf("str[]=%s\n",str);
NONO();
}
选项
答案
{ char *p=s; int i=0; while(*p){ if(*p !=c)s[i++]=*p; p++; }
解析
进入fun函数,根据前面的分析:
(1)首先,设置一个指针变量指向字符串的头位置,并使用循环,依次查找字符串中的指定字符。
(2)若找到指定字符,则将后面位置的第一个非指定字符移到当前位置,并将其后的字符也依次前移。
(3)最后将处理的字符串输出。
转载请注明原文地址:https://jikaoti.com/ti/Snn0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序: void swapl(int c0[],int c1[]) {int t; t=c0[0]; c0[0]=c1[0];c1[0]=t; } void swap2(int *c0,iht *c1) {in
有以下程序: void sort(int a[],int n) { int i,j,t; for(i=0;i<n;i++) for(j=i+1;<n;j++) if(a[i]<a[j]){ t=a[
设有定义int k=1,m=2;float f=7;,则以下选项中错误的表达式是 ______。
以下叙述中错误的是 ______。
以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空。intisprime(inta){inti;for(i=2;i<=a/2;i++)
有以下程序段 struct st {int x;int *y;}*pt; int a[]={1,2},b[]={3,4}; struct st c[2]={10,a,20,b};
当执行以下程序时,输入1234567890<回车>,则其中while循环体将执行【 】次。#include<stdio.h>main(){charch;while((ch=getchar())==’0’)prinft("#
以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。 void f(int b[],int n,int flag) { int i,j,t; for(i=0;i<n-1;i++)
设已有定义:float x;,则以下对指针变量p进行定义且赋初值的语句中正确的是
设已定义i和k为int类型变量,则以下for循环语句______。for(i=0;k=-1,k=1;i++,k++)printf("****\n");
随机试题
简述脊髓半横断损伤后的临床表现和机制。
A.干灰化法B.酸消解法C.固相萃取法D.微波消解法E.溶剂萃取法用气相色谱法测定水中有机物时,最好使用
某国公民杰克逊18岁,在上海某商店购买一款手机,价值4000元人民币。3天之后,杰克逊在另一商店发现该款手机的价格便宜许多,便到前一商店要求退货,被拒绝。杰克逊遂向上海某法院起诉,理由是根据其本国法,男子满20岁为成年人,自己未届成年,购买手机行为应属无效
犯罪嫌疑人李军,男,40岁,汉族,大学文化,浙江省温州市苍南县人,系某国家机关进口处干部。1998年6月,李军被派去R国进修学习半年,在某国学习期间,李军禁不住金钱、美女的诱惑。被该国情报部门拉下水。回国后,李军曾多次为R国情报机构提供国家秘密和情报。李军
关于委托人提供的人员服务,下列说法错误的是( )。
背景材料:某高速公路M合同段(K17+300~K27+300)主要为路基土石方工程,本地区岩层构成为泥岩、砂岩互层,抗压强度20MPa左右,地表土覆盖层较薄。在招标文件中,工程量清单列有挖方240万m3(土石比例为6:4),填方249万m3,填方路段填料
工程量清单应由()提供。
关于第一段的段意有如下四种概括,其中最准确的一种是:对于第一段中画线句子有如下四种理解,最正确的是:
ThougheverymorningIqueue(排队)atthebusstopveryearly,Iamoften【C1】______forschool.Thereasonisthatthereare【C2】__
A.exceptionB.ultimatelyC.embarrassD.conceptsE.toleranceF.oppressG.targetH.adaptableI.stressedJ.temporaril
最新回复
(
0
)