gebiwangda 2022-09-02 16:40 采纳率: 81.8%
浏览 42
已结题

if语句体中的赋值不生效

if语句体中的赋值不生效
在while循环的第二个if中,我想达到的效果是将输入的!替换为!!,但是测试下来赋值不会生效,但是将.替换为!的语句可以生效

#include<stdio.h>
int main()
{
    char ch;  //读取输入
    char cs[255];  //储存输入 
    int n=-1; 
    int l=0;     //记录.替换次数 
    int m=0;     //记录!替换次数 
    while((ch=getchar())!='#')
    {
        n++;
        if(ch=='.')
        {
            ch='!';
            l++;
            cs[n]=ch;
            continue;
        }
        if(ch=='!')
        {
            ch='!!';
            m++;
            cs[n]=ch;
            continue;
        }
        cs[n]=ch;
    }
    for(int j=0;j<=n;j++)
    {
        printf("%c",cs[j]);
    }
    printf("\n一共替换了%d次",l+m);
    
}

  • 写回答

3条回答 默认 最新

  • RivaJ 2022-09-02 16:52
    关注

    !!是两个字符,所以'!!'是不合法的,第二个if可以改为

        if (ch == '!') {
            m++;
            cs[n]  = ch;
            cs[++n] = ch;
            continue;
        }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月10日
  • 已采纳回答 9月2日
  • 创建了问题 9月2日

悬赏问题

  • ¥15 SQL Server下载
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求