首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中fun函数的功能是:将P所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入 “I am a student to take the examination.”,
给定程序MODll.C中fun函数的功能是:将P所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入 “I am a student to take the examination.”,
admin
2020-07-28
47
问题
给定程序MODll.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 letters:”);
gets(chrstr);
d=strlen(chrstr);
chrstr[d]=‘ ’;
chrstr[d+1] =0 ;
printf(“\n\nBefore changincj:\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/uX3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。请在程序的下划线处填入
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun,其功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从0~P(含P,P小于等于n﹣1)的数组元素平移到数
有以下程序main(){inta=1,b=2,c=3,d=0;if(a==1&&b++=2)if(b!=2||c--!=3)printf("%d,%d,%d\n",a,b,c):elsepfintf("%d,%d,%d\n",a,b,c);e
fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下划线处应填写的是#include<stdio.h>#defineN5Voidfun(intx[N]){intm;for(m=N-1;m>=0;m--)scanff"%d"
若有定义:doublea=22;imi=0,k=18;则不符合C语言规定的赋值语句是
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
以下选项中作为C语言合法常量的是
设有定义:char*c;以下选项中能够使c正确指向一个字符串的是
下列排序方法中,最坏情况下比较次数最少的是()。
E-R图中用来表示实体的图形是()。
随机试题
美国商人路易斯与中国华泰公司共同出资设立一个中外合资企业,双方经协商拟定的合资企业合同,其部分条款如下:(1)合资企业注册资本500万美元。其中,中方出资为300万美元,外方出资为200万美元。分期缴纳出资,中方第一期出资为30万美元,外方第一期出
直杆式杠杆除锈机主要由圆盘钢丝刷、支架、电动机和()等组成。
A.Cushing溃疡B.十二指肠溃疡C.Curling溃疡D.复发性溃疡E.吻合口溃疡
急性心肌梗死时,血中出现最早的物质是
细菌与所致疾病组合错误的是
通常个人经营贷款单笔金额较大,借款人还本付息资金主要来源于其经营收入或利润。所以,无论贷款长短,银行鼓励借款人用一次利随本清还款方式,这样银行管理成本和风险成本都低。()[2015年5月真题]
根据生命周期理论,个人在稳定期的理财特征为()。
①太阳在亿万年的历史长河中忠于职守地为地球提供着热量,它的能源是什么?②这是一个催人探索的问题。③在相对论出现之前,人们解释说太阳内部物质燃烧而释放出能量。④相对论诞生后,则解释为原子核的裂变产生出巨大的能量。⑤这两种解释使人类面临的选择都将是痛苦的。
C++对C语言作最大的改进是( )。
A.primeB.addedC.byD.reproductiveE.excessiveF.takeG.extendsH.producingI.adultJ.provesK.onaverageL.
最新回复
(
0
)