鱼C论坛

 找回密码
 立即注册
查看: 831|回复: 1

[已解决]c语言,有没有大佬帮忙解答一下

[复制链接]
发表于 2022-3-2 18:22:29 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 fishshen 于 2022-3-2 19:56 编辑

请编写一段程序,实现如下功能:将某一非标准化的全英文段落进行标准化 处理后并输出。即将该段落中的所有大写字母转化为小写字母,相邻两个单词 间的空格只能有一个(即删除两个单词间的多余空格)。
最佳答案
2022-3-3 08:44:58
本帖最后由 jhq999 于 2022-3-3 08:56 编辑
int fun(char instr[])
{
        int i=0,j=0;
        while(instr[i])
        {

                if(instr[i]==0x20)
                {
                        if (instr[i+1]!=0x20)
                        {
                                instr[j]=0x20;
                                j++;
                        }
                }
                else 
                {
                        
                        if(instr[i]>='A'&&instr[i]<='Z')
                                instr[j]=instr[i]+'a'-'A';//instr[i]+=32;
                        else
                                instr[j]=instr[i];
                        j++;
                }
                i++;
        }
        instr[j]='\0';
        return j;
}
int main()
{
        char ch[256]="1234 aBCdfg     hGhh kFk ";
        int ret=fun(ch);
        printf("%s",ch);
        return 0;
}
1234 abcdfg hghh kfk 
或者
if(instr[i]!=0x20||instr[i+1]!=0x20)
                {
                
                
                        
                        if(instr[i]>='A'&&instr[i]<='Z')
                                instr[j]=instr[i]+'a'-'A';//instr[i]+=32;
                        else
                                instr[j]=instr[i];
                        j++;
                }
1234 abcdfg hghh kfk 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-3 08:44:58 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jhq999 于 2022-3-3 08:56 编辑
int fun(char instr[])
{
        int i=0,j=0;
        while(instr[i])
        {

                if(instr[i]==0x20)
                {
                        if (instr[i+1]!=0x20)
                        {
                                instr[j]=0x20;
                                j++;
                        }
                }
                else 
                {
                        
                        if(instr[i]>='A'&&instr[i]<='Z')
                                instr[j]=instr[i]+'a'-'A';//instr[i]+=32;
                        else
                                instr[j]=instr[i];
                        j++;
                }
                i++;
        }
        instr[j]='\0';
        return j;
}
int main()
{
        char ch[256]="1234 aBCdfg     hGhh kFk ";
        int ret=fun(ch);
        printf("%s",ch);
        return 0;
}
1234 abcdfg hghh kfk 
或者
if(instr[i]!=0x20||instr[i+1]!=0x20)
                {
                
                
                        
                        if(instr[i]>='A'&&instr[i]<='Z')
                                instr[j]=instr[i]+'a'-'A';//instr[i]+=32;
                        else
                                instr[j]=instr[i];
                        j++;
                }
1234 abcdfg hghh kfk 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 08:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表