www1818518 2021-06-21 16:37 采纳率: 78.6%
浏览 37
已采纳

c语言期末题目求助!!!!!!;

对于一个字符串,如果这个字符串在ASCII码的意义上是有序的,即升序或降序,则称该字符串为“优雅的字符串”。一个长为n的字符串s,对于1<= i <= n - 1,如果总有s[i] <= s[i+1],则字符串为升序;如果总有s[i] >= s[i+1],则字符串降序。现给定一个字符串,请你判断该字符串是否“优雅”,如果该字符串是“优雅”的,则判断是“正优雅”(升序)还是“负优雅”(降序)。

 

输入描述

一个非空,不包含空格的字符串s,保证字符串中的字符都是ASCII标准中的字符。数据保证不会出现所有字符相同的字符串。(2<= length(s) <=1e5)

输出描述

如果字符串“正优雅”,则输出“Positive elegance”,如果“负优雅”,则输出“Negative elegance”,否则输出“Non elegance”(均不含引号)。

提示无

样例输入 (*+12356ASdfz

样例输出

Positive elegance

  • 写回答

3条回答 默认 最新

  • qfl_sdu 2021-06-21 17:00
    关注

    代码如下,如有帮助,请采纳一下,谢谢。

    #include <stdio.h>
    #include <string.h>
    
    int main()
    {
    	char a[100] = {0};
    	int i;
    	int zyy = 1;
    	int fyy = 1;
    	printf("请输入字符串:");
    	gets(a);
    	//判断是否正优雅
    	for (i=1;i<strlen(a);i++)
    	{
    		if(a[i] < a[i-1])
    		{
    			zyy = 0;
    			break;
    		}
    	}
    	//判断是否负优雅
    	for (i=1;i<strlen(a);i++)
    	{
    		if(a[i] > a[i-1])
    		{
    			fyy = 0;
    			break;
    		}
    	}
    
    	if (zyy && !fyy)
    	{
    		printf("Positive elegance\n");
    	}else if (!zyy && fyy)
    	{
    		printf("Negative elegance\n");
    	}else
    		printf("Non elegance\n");
    	return 0;
    
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料