EveryLink 2017-12-19 13:52 采纳率: 66.7%
浏览 1080
已采纳

请问大神为什么这个C语言程序运行结果是13?我怎么觉得是12345?求大神解释,这是怎么运行的?

#include
#include

int main(void)
{
char c;
for(c=getchar();getchar()!='#';c=getchar())
putchar(c);
}图片说明

  • 写回答

8条回答 默认 最新

  • treewutong 2017-12-19 13:57
    关注

    执行情况是这样的:
    首先执行getchar()得到'1';
    然后执行getchar()得到'2',判断不等于'#',执行putchar(c),输出‘1’;
    然后执行c=getchar()得到'3';
    然后执行getchar()得到'4',判断不等于'#',执行putchar(c),输出‘4’;
    然后执行c=getchar()得到'5'
    然后执行getchar()得到'#',判断等于'#',结束循环。

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

报告相同问题?

悬赏问题

  • ¥15 利用Java连接API接口总是出问题
  • ¥15 请教一个关于镜头标定,棋盘格格子大小的问题(畸变测试)
  • ¥15 el-table输入多维数组怎么实现
  • ¥15 安装GroudingDINO RuntimeError: Error compiling objects for extension
  • ¥15 关于推送项目到github的问题
  • ¥15 急!C++指针编写相关的问题
  • ¥15 kerberos身份认证配置问题
  • ¥30 用python写一个多签情况下波场的代理资源和回收资源
  • ¥15 怎么在matlab中输出显示泵的流量-扬程和管路损失与流量均在一个表格里
  • ¥15 matlab学期例题代码答疑