墨染微凉~ 2023-04-28 20:46 采纳率: 33.3%
浏览 26
已结题

关于#C语言#的问题,如何解决?


#include <stdio.h>
#include <string.h>
int main()
{
    long p;
    long q;
    char s[128];
    int stop=0;
    printf("请输入指令的页号和页内地址:\n");
    //scanf("%1d%1d",&p,&q);
    
    if(scanf("%1d%1d",&p,&q)!=2)
    {
        printf("如果选择退出系统,请输入exit!\n");
        scanf("%s",s);
        if(strcmp(s,"exit")==0)
        {//如果输入的为"exit"那么就退出,进入重选页面
            stop=1;
        }
    } 
    printf("%d",stop);
    return 0;
}

上面的代码运行之后直接退出,可是我感觉写的没有问题,也找不到错哪儿了,好崩溃,有人能解答一下吗?

img

  • 写回答

3条回答 默认 最新

  • Huazie 全栈领域优质创作者 2023-04-28 20:53
    关注

    输入里面是 %ld 吧, 你写的 是 1d 不是 ld, 数字 1

    另外 ,第一个if里的 scanf 输入后,你这里 不止换行符,还有输错的非数字字符, 需要清空一下 输入流

    fflush(stdin);
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月10日
  • 已采纳回答 5月2日
  • 修改了问题 4月28日
  • 创建了问题 4月28日

悬赏问题

  • ¥20 如何推断此服务器配置
  • ¥15 关于github的项目怎么在pycharm上面运行
  • ¥15 内存地址视频流转RTMP
  • ¥100 有偿,谁有移远的EC200S固件和最新的Qflsh工具。
  • ¥15 找一个QT页面+目标识别(行人检测)的开源项目
  • ¥15 有没有整苹果智能分拣线上图像数据
  • ¥20 有没有人会这个东西的
  • ¥15 cfx考虑调整“enforce system memory limit”参数的设置
  • ¥30 航迹分离,航迹增强,误差分析
  • ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败