首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写函数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
25
问题
编写函数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://kaotiyun.com/show/HJJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
运行下面的程序,其输出结果为______。main(){printf("%d,%d",5%-3,-5%3);}
先有两个C程序文件T18.c和myfun.c同在TC系统目录(文件夹)下,其中T18.c文件如下:#include<stdio.h>#include"myfun.c"main(){
以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否贝愉出NO。当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件;a+b>c,a+c>b,b+c>a。请填空。main(){
在关系模型中,把数据看成是二维表,每—个二维表称为—个[]。
以下叙述中错误的是______。
有以下程序 main() { char *p[]={"3697","2548"}; int i,j; long num=0; for(i=0;i<2;i++) {j=
下面程序的运行结果是[]。#include<stdio.h>intf(inta[],intn){if(n>1)returna[0]+f(a+1,n-1);
设有定义:FILE *fw;,请将以下打开文件的语句补充完整,以便可以向文本文件readme.txt的最后续写内容。fw=fopen("readme.txt",【 】);
当执行以下程序时,输入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++)
随机试题
最常见的单性局域网类型有三种:总线型、环型和()。
《瀛涯胜览》
分层抽样
自然人因战争下落不明,从战争结束之日起满2年的,对他可以申请死亡宣告。()
室上性心动过速的心电图特点为()。
使用抗组胺药时的注意事项包括()。
建设工程开工时间是指工程设计文件中规定的任何一项永久性工程的()开始日期。
表面平整光滑,坚固耐用,色彩鲜艳,易清洁、防水、防火、耐磨、耐腐蚀等这种砖称()。
基金对投资的最低限额要求不高,投资者可以。根据自己的经济能力决定购买数量。()
Familiesinalmosteverycountryarechanging.InNorthAfrica,inthepast,manypeoplelivedinextendedfamilies.Fiftytoa
最新回复
(
0
)