weixin_48712870 2021-06-24 19:14 采纳率: 100%
浏览 134
已采纳

将一个英文语句以单词为单位逆序排放。

将一个英文语句以单词为单位逆序排放。

例如“I am a boy”,逆序排放后为“boy a am I” 所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符//不能运行,求解答

#include <stdio.h>
#include <string.h>

int main()
{
    char str[1000];
        int len=strlen(str);
    gets(str);
    
    for(int i=len-1;i<=0;i--)
    {
        if (str[i]=' ')
            for(int m=i;str[m]=' '||str[i]!='\n';m++)
            {
                printf("%c",str[m]);
            }
    else
        break;
        }
    return 0;
}

  • 写回答

1条回答 默认 最新

  • 暖晴的天 2021-06-24 19:30
    关注

    修改如下: 

    #include <stdio.h>
    #include <string.h>
    
    int main()
    {
    	char str[1000];
    	gets_s(str);
    	int len = strlen(str);
    
    	char temp[50];
    	memset(temp, '\0', 50);
    	int j = 0;
    	for (int i = len - 1 ; i >= 0; i--)
    	{
    		
    		if (str[i] != ' ')
    		{
    			temp[j++] = str[i];
    		}
    		else
    		{
    			for (; j >= 0; j--)
    			{
    				printf("%c", temp[j]);
    			}
    			memset(temp, '\0',50);
    			j = 0;
    			printf(" ");
    		}
    	}
    
    	for (; j >= 0; j--)
    	{
    		printf("%c", temp[j]);
    	}
    
    	return 0;
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line