weixin_65124876 2022-02-28 17:07 采纳率: 50%
浏览 20
已结题

想输入5个数,为什么我的代码要输入6个才会继续运行

#include<stdio.h>
int main()
{
int a[1000], i, j, k, t;
scanf_s("%d", &k);
for (i = 0; i < k; i++)
{
scanf_s("%d\n", &a[i]);
}
for (i = 1; i < k; i++)
{
for (j = 0; j < k - 1; j++)
{
if (a[j] > a[j + 1])
{
t = a[j];
a[j] = a[j + 1];
a[j + 1] = t;
}
}
}
int g = (k + 1) / 2 - 1;
printf("%d", a[g]);

return 0;

}

  • 写回答

1条回答 默认 最新

  • yun6853992 2022-02-28 17:13
    关注

    scanf输入时,前面的格式化你多了个\n,不加是正常的。

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月8日
  • 已采纳回答 2月28日
  • 创建了问题 2月28日

悬赏问题

  • ¥30 自适应 LMS 算法实现 FIR 最佳维纳滤波器matlab方案
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥15 Python3.5 相关代码写作
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像