| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1586 人关注过本帖
标题:各位给参谋一下这个题有什么问题
只看楼主 加入收藏
小黄123
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2017-5-30
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
各位给参谋一下这个题有什么问题
函数str1的功能是输入一个英文句子(字符串),将其中每个单词的最后一个字母改写成大写,然后输出此句子。(这里的"单词"是指由空格隔开的字符串)。例如:若输入:"this is a book ",则应输出:"thiS iS A booK "请改正函数str1中的两个错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
程序如下:
#include "stdio.h"
#include "ctype.h"
#include "conio.h"
void str1(char *p)
{
int k=0;
for(;*p;p++)
if(k)
{
if(p==' ')
{
k=0;
*p=toupper(*(p-1));
}
}
else
        k=1;
}
void main()
{
    char str[100];
    int d;
    clrscr();
    printf("\n please input a string:");
    gets(str);
    str1(str);
    printf("\nafter changing:\n %s",str);
}
搜索更多相关主题的帖子: 字符串 单词 include 英文句子 
2017-06-21 16:32
peng880610
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:128
专家分:123
注 册:2017-3-29
收藏
得分:20 
if(*p==' ')
*(p-1)=toupper(*(p-1))

#include <stdio.h>
#include <ctype.h>
#include <string.h>
void str1(char *p)
{
    int k=0;
    for(;*p;p++)
        if(k)
        {
            if(*p==' ')
            {
                k=0;
                *(p-1)=toupper(*(p-1));
            }
        }
        else
            k=1;
}
int main()
{
    char str[100];
    int d;
    //clrscr();
    printf("\n please input a string:");
    gets(str);
    d=strlen(str);
    str[d]=' ';
    str[d+1]=0;
    str1(str);
    printf("\n after changing:\n %s",str);
    return 0;
}
2017-06-22 01:01
小黄123
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2017-5-30
收藏
得分:0 
太谢谢了  这个题 一直有地方不懂  您能给解释一下 //clrscr();这个语句嘛
2017-06-22 08:47
peng880610
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:128
专家分:123
注 册:2017-3-29
收藏
得分:0 
这个我是注释掉了,说实话,这个函数放这里,我看不明白有什么用,而且编译提示的错误正指向这个函数。
2017-06-22 11:35
小黄123
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2017-5-30
收藏
得分:0 
多谢 多谢
2017-06-22 14:10
快速回复:各位给参谋一下这个题有什么问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017393 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved