53342321 2019-12-10 23:18 采纳率: 100%
浏览 490
已采纳

字符串的一道题,大神帮我改一下

描述
医生在书写药品名的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将医生书写混乱的药品名整理成统一规范的格式,即药品名的第一个字符如果是字母要大写,其他字母小写。如将ASPIRIN、aspirin整理成Aspirin。
输入
第一行一个数字n,表示有n个药品名要整理,n不超过100。
接下来n行,每行一个单词,长度不超过20,表示医生手书的药品名。药品名由字母、数字和-组成。
输出
n行,每行一个单词,对应输入的药品名的规范写法。
样例输入
4
AspiRin
cisapride
2-PENICILLIN
Cefradine-6
样例输出
Aspirin
Cisapride
2-penicillin
Cefradine-6
来源

#include<stdio.h>
#include<string.h>
int main()
{
  int n,i,j;
  char ch[256];
  scanf("%d",&n);
  for(j=0;j<n;j++)
  {
      gets(ch);
      int len=strlen(ch);
  for(i=0;i<len;i++)
    {
     if(i==0)
     {
         if(ch[i]>='a'&&ch[i]<='z') ch[i]-=32;
     }
     else
     {
         if(ch[i]>='A'&&ch[i]<='Z') ch[i]+=32;
     }
    }
    printf("%s\n",ch);
  }

    return 0;
}


无法完整运行程序

  • 写回答

2条回答 默认 最新

  • 喜欢喝茶的猫 2019-12-11 09:36
    关注
    #define MAX_NUM 100
    #define MAX_LEN 20
    int main()
    {
      int n,i,j;
      char ch[MAX_NUM][MAX_LEN];
      scanf("%d",&n);
      for(i=0;i<n;i++)
      {
         scanf("%s",ch[i]);
      }
    
          //int len=strlen(ch);
      for(i=0;i<n;i++)
        {
            for(j=0;j<strlen(ch[i]);j++)
            {
              if((ch[i][0]>='a'&&ch[i][0]<='z')||(ch[i][0]>='A'&&ch[i][0]<='Z'))
               {
                   if(j==0)
                   {
                      if(ch[i][j]>='a'&&ch[i][j]<='z') ch[i][j]-=32;
                   }
                  else if(ch[i][j]>='A'&&ch[i][j]<='Z') ch[i][j]+=32;
    
    
                }
               }
            }
        printf("输出:\r\n");
        for(i=0;i<n;i++)
        {
         printf("%s\r\n",ch[i]);
        }
       // printf("%s\r\n",ch[0]);
    
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题