m0_63999697 2021-12-27 17:50 采纳率: 93.5%
浏览 19
已结题

小写转大写 能帮我看看错在哪里吗

问题描述
从键盘输入一个字符串,将其中的小写字母全部转换成大写字母。输入的字符串以“!”结束。
输入
输入只有一行,该行的字符数目不超过100。
输出
把小写字母转换为大写后输出。
输入样列
hello world!
输出样例
HELLO WORLD!

#include<stdio.h>
int main()
{
    char str[110];
    int i,len=0;
    while((str[len]=getchar())!='!')
    {  
         len++; 
    }
    for(i=0;i<len;i++)
        if(str[i]>='a'&&str[i]<='z')
            str[i]-=32;
    puts(str);
    return 0;
}

  • 写回答

2条回答 默认 最新

  • fuill 2021-12-27 18:17
    关注

    得用gets()获取字符串,用getchar的话,字符串长度会不对

    img

    #include<stdio.h>
    int main()
    {
        char str[110];
        int i,len=0;
        gets(str);
        while(str[len]!='!')
        {  
             len++; 
        }
        //printf("len:%d\n",len) ;
        for(i=0;i<len;i++)
            if(str[i]>='a'&&str[i]<='z')
                str[i]-=32;
        puts(str);
        return 0;
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月4日
  • 已采纳回答 12月27日
  • 创建了问题 12月27日

悬赏问题

  • ¥15 这个功能用什么软件发合适?
  • ¥60 微信小程序,取消订单,偶尔订单没有改变状态
  • ¥15 用pytorch实现PPO算法
  • ¥15 关于调制信号的星座图?
  • ¥30 前端传参时,后端接收不到参数
  • ¥15 这是有什么问题吗,我检查许可证了但是显示有呢
  • ¥15 机器学习预测遇到的目标函数问题
  • ¥15 Fluent,液体进入旋转区域体积分数不连续
  • ¥15 java linux下将docx文件转pdf
  • ¥15 maven无法下载依赖包