首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入“I am a student to take the examination.”,则应输出“I a
给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如,若输入“I am a student to take the examination.”,则应输出“I a
admin
2018-09-27
46
问题
给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。
例如,若输入“I am a student to take the examination.”,则应输出“I aM A studenT tO take the examination.”。
请修改程序中的错误之处,使它能得出正确的结果。
注意:不要改动main函数,不得删行,也不得更改程序的结构!
1 #include<ctype.h>
2 #include<stdio.h>
3 #include<string.h>
4 void fun(char *p)
5 {
6 int k=0;
7 for(;*p;p++)
8 if(k)
9 {
10 /**********found**********/
11 if(p==’ ’)
12 {
13 k=0;
14 /**********found**********/
15 *(p)=toupper(*(p-1))
16 }
17 }
18 else
19 k=1;
20 }
21 main()
22 {
23 char chrstr[64];
24 int d;
25
26 printf(’’\nPlease enter an English sentence within 63 letters:’’);
27 gets(chrstr);
28 d=strlen(chrstr);
29 chrstr[d’=’ ’;
30 chrstr[d+1]=0;
31 printf(’’\nlnBefore changing:\n%s’’,chrstr);
32 fun(chrstr);
33 printf(’’\nAfter changing:\n%s’’,chrstr);
34 }
选项
答案
(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://kaotiyun.com/show/s8xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是()。inta=7,b,C;b=++a;C=a++;printf("%d,%d,%d",a,b,C);
下列程序的运行结果是()。#include<stdio.h>main(){stmctdate{intyear,month,day;}today;primf("%d\n",sizeof(struct
若函数调用时的实参为变量,以下关于函数形参和实参的叙述中正确的是()。
数据独立性是数据库技术的重要特点之一,所谓数据独立性是指 _____。
下列程序段的运行结果是______。charstr[]="ABCD",*p=str;printf("%d\n",*(p+3));
在表示C语言的整型变量时,表示“无符号整型”的符号是()
两次运行下面的程序后,如果从键盘上分别输入7和3,则输出结果是______。main(){intx;scanf("%d",&x);if(++x>5)printf("%d",x);elsep
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数为【】。
在深度为5的满二叉树中,叶子结点的个数为()。
在深度为7的满二叉树中,度为2的结点个数为【】。
随机试题
某海轮在航行途中失火,舱中有布匹和面粉,灭火后发现部分布匹被烧毁,面粉被救火时冲水浸湿,则下列说法正确的有()
肾病综合征常见的并发症有______________、______________和______________。
社区卫生服务既要进行治疗,又要进行预防;重视技术、社会服务;重视生理、心理服务等,是指社区卫生服务的
马,红色,3岁。证见发热,咳嗽不爽,声音洪大,鼻流黏涕,呼出气热,口渴喜饮,舌苔薄黄,口红短津,脉象浮数。该病可首选针刺
下列费用中属于直接工程费的是()。
定金合同是当事人双方为了保证债务的履行,按照合同规定向对方预先给付一定数额的货币,定金的数额由当事人约定,但不得超过主合同标的额的()。
关于一些混凝土外加剂性能的说法,错误的是()。
下列关于意大利遗产和赠与税法的规定的表述,错误的一项是( )。
1.打开工作簿文件EX4.XLS(内容如下),将工作表sheetl的A1:D1单元格合并为一个单元格,内容居中;计算“学生均值”行,(学生均值=贷款金额/学生人数,保留小数点后两位),将工作表命名为“助学贷款发放情况表”。助学贷款发放情况表贷款金额13
Itisanastonishingfactthattherearelawsofnature,rulesthatsummarizeconveniently-【21】qualitativelybutquantitatively
最新回复
(
0
)