男孩紙@~
2021-05-22 10:33
采纳率: 85.7%
浏览 31

小白一个 有没有大佬帮忙解决一下这个问题!

#include<stdio.h>


int main()
{
	int number[20];
	int x = 0;
	scanf_s("%d", &x);
	int count = 0;
	int sum = 0;
	while (x != -1)
	{
		number[count] = x;
		sum += x;
		count++;
		scanf_s('%d', &x);
	}
	int avg = sum / (count + 1);
	printf("输入的正整数的平均数为%d", avg);
	for (int i = 0; i <= count; i++)
	{
		if (number[i] > avg)
			printf("%d\n",number[i]);
	}
	return 0;
}

运行的时候输入一个数 然后回车程序就直接结束了 没有输出

试着调试了一下 到while循环里面scanf语句就不能再次输入了 显示已发生异常 读取位置发生冲突

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • CSDN专家-张老师 2021-05-22 10:40
    已采纳

    你代码第16行scanf_s('%d', &x); 是双引号不是单引号

    点赞 1 评论
  • CSDN专家-张老师 2021-05-22 10:38

    为了更好为你解答,请你把代码格式化一下,以代码段方式发下

    点赞 评论
  • 有问必答小助手 2021-05-26 14:46

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    点赞 评论

相关推荐 更多相似问题