首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入 ”I am a student to take the examination.”,
给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入 ”I am a student to take the examination.”,
admin
2020-07-28
83
问题
给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。
例如,若输入
”I am a student to take the examination.”,
则应输出
”I aM A studenT tO takE thE examination.”。
请修改程序中的错误之处,使它能得出正确的结果。
注意:不要改动main函数,不得删行,也不得更改程序的结构!
#include
#include
#include
void fun(char*p)
{
int k=0 ;
for(;*p;p++)
if(k)
{
/**********found***********/
if(p==’’)
{
k =0;
/**********found***********/
*(p)=toupper(*(P一1))
}
}
else
k=1;
}
main()
{
char chrstr[64];
int d;
printf("\nPlease enter an English
sentence within 63 1etters:");
gets(chrstr);
d=strfen(chrStr);
chrstr[d]=’ ’;
chrstr[d+1]=0;
printf("\n\nBefore changing:\n
%s",chrstr);
fun(chrstr);
printf("\nAfter changing:\n%s",
chrstr);
}
选项
答案
(1)if(*p=’ ’) (2)*(p—1)=toupper(*(p一1));
解析
(1)第一个错误标识下的if语句应该是判断字符串中的字符是否是空格,根据“for(;*p;p++)”语句中for循环条件中p的定义应该为字符型指针变量,*p是取p所指存取单元的值,所以“if(p==’’)”应该改为“if(*p==’’)”。
(2)题干中要求是将每个单词的最后一个字母改成大写,所以它的位置应该是挨着空格的前一个字符,应该是指针p指向字符的前一个位置,“*p=toupper(*(p—1))”是将改动的值赋给了p所指的空格,所以应该改为“*(p一1)=toupper(*(p—1));”且语句未尾应有分号。
转载请注明原文地址:https://www.kaotiyun.com/show/8G3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>intb=2;intfun(int*k){b=*k+b;return(b);}main(){inta[10]={1,2,3,4,5,6,7,8},i;for(i=2;i<
以下叙述中正确的是
学生关系模式中有D(D#,Dn,Dl,DAddr)(其属性分别为系编号、系名称、系主任和系地址)和S(S#,Sn,SG,Date,Maj,D#)(其属性分别为学号、姓名、性别、入学日期、专业和系编号)两个关系,关系S的主键(码)是S#,关系S的外键(码)是
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
有以下程序#include<stdio.h>main(){inta=1,b=0;printf("%d,",b=a+b);printf("%d\n",a=2*b);}程序运行后的输出结果是
以下正确的字符串常量是
下列叙述中正确的是
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,其功能是:把低于平均分的学生数据放入b所
以下错误的定义语句是
随机试题
下述溶液属于等渗溶液的是()。
单个细胞的动作电位波形不能完全融合的原因是()。
放射性活度的国际单位制是
下列哪种情况可出现二氧化碳结合力升高
尿中红细胞平均体积MCV>72±1,且呈小细胞分布,说明血尿多来源于
除去粒子间的空隙,但不排除粒子本身的细小空隙,测定其容积而求得的密度是指
巴比妥类药物急性中毒时静脉滴注碳酸氢钠的目的是
在双缝干涉实验中,在给定入射单色光的情况下,用一片能透过光的薄介质片(不吸收光线)遮住下面的一条缝,则屏幕上干涉条纹的变化情况是:
下列房地产投资风险中,()不易判断和控制。
请你根据提示写一篇关于我国手机拥有量变化的报导,并阐述手机给人们生活所带来的利与弊。(1)到2002年底中国手机拥有量为20万部;(2)到2005年中国手机拥有量已达到了30万部;(3)方便、随时随地联系;(4)许多功能满足不同要求,如发短信、上网
最新回复
(
0
)