SuzumiyaSAMA
2015-12-02 01:17
采纳率: 92.3%
浏览 1.7k

做作业时的一个小程序,请大神来看看

一切都没有问题。。。
然而。。。。
检测输入的时候跳不过回车。。。。。
(ch == ‘\n’)那一句怎么改都没用。。。
求解。。。。。。

 //利用if else语句编写程序读取输入,直到#。用一个感叹号代替每个句号,将原有的每个感叹号用两个感叹号代替,最后报告进行了多少次替代
#include<stdio.h>
int main (void)
{
    char ch;
    int change = 0;
    printf("Please enter your words:\n");
    while ((ch = getchar()) != '#')
    {
        if (ch == '\n')
            continue;
        else if ('.' == ch){
            printf("!");
            change++;
        }
        else if ('!' == ch){
            printf("!!");
            change++;
        }
        else
            printf ("%c",ch);
    }
    printf("It has changed for %d times.",change);
    printf("\nDone\n");
    return 0;
}

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • Jason_code_me 2015-12-03 06:32
    已采纳

    什么叫做跳不过回车,你想要的输出是什么样子的?请描述清楚。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • listen_to_rain 2015-12-02 02:40

    你把\n改成\0试试,我记得数组里面的最后一个是\0

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题