输入若干个数据


输入若干个数据的循环,注意循环内的scanf只能在循环尾才能不将第一次的scanf输入覆盖
#include <stdio.h>
int main()
{
	int sum=0, num1=0,num=0;//定义平均分,不及格以及人数
	int gra;
	scanf("%d", &gra);
	while (gra >= 0)//以负数为结束标识//问题是平均分会把负数算入
	{
	
			
			if (gra <60) //计算不及格人数
			{
				num1++;
				
			}
			if (gra > 0)
			{
				sum = sum + gra;
				num++;
			}
      scanf("%d", &gra);
	}
	printf("%d ", sum / num);//计算输出平均分

	printf("%d", num1);//输出不及格人数
	return 0;
}

关键词 1结束标识

2scanf的覆盖

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用 Python 语言编写一个简单的程序实现该功能,代码如下: ```python data = input("请输入若干个数据,用逗号分隔:") data_list = data.split(",") # 将输入数据按照逗号分隔转化为列表 num_list = [] # 用于存储字类数据 for item in data_list: try: num = float(item) # 尝试将字符串转化为浮点 num_list.append(num) except ValueError: pass # 如果转化失败,则忽略该数据 if len(num_list) > 0: avg_num = sum(num_list) / len(num_list) print("字类数据的平均值为:", avg_num) else: print("输入数据中没有字类数据!") ``` 运行上述代码后,程序会提示用户输入若干个数据,用逗号分隔。例如,输入以下数据: ``` "1,2,3,4,5,a,b,c,d,e" ``` 程序会将其中的字类数据提取出来,计算它们的平均值并输出结果: ``` 字类数据的平均值为: 3.0 ``` ### 回答2: 要计算从盘输入若干个数据的平均值,我将使用Python编程语言来完成这个任务。下面是一个简单的解决方案: ```python data = input("请输入若干个数据,用逗号分隔,要加引号:") numbers = [float(i) for i in data.split(",") if i.isdigit()] if len(numbers) > 0: average = sum(numbers) / len(numbers) print("输入数据的平均值为:", average) else: print("没有输入有效的数据。") ``` 程序的工作流程如下:首先,我们使用`input()`函来获取用户从盘输入数据,然后使用`split(",")`方法将数据拆分为一个列表。接下来,我们使用列表推导式过滤出其中的数据,并将其转换为浮点类型。如果列表中有数据,我们计算数据的平均值,并输出结果;否则,我们将提示用户没有输入有效的数据。 值得注意的是,上述程序假设用户输入数据以逗号分隔,并且输入数据只包含字。如果输入数据不符合这些要求,程序可能会出现错误。在实际应用中,我们还需要对用户输入进行验证和错误处理。 ### 回答3: 你好!要解决这个问题,我将向你解释一种方法来计算输入字的平均值。 首先,你可以通过使用`input()`函来从控制台接收一个字符串输入,这个字符串可以包含多个字,每个字之间用逗号分隔。然后,将接收到的字符串使用`split()`函以逗号为分隔符分成一个列表,其中每个元素都是一个字符串类型的字。 接下来,你需要遍历整个列表,将每个字符串类型的字转换为实际的字类型。可以通过使用`float()`或`int()`函将字符串转换为浮点或整。然后,将这些字累加起来并且计算列表的长度,以便于求平均值。 最后,将累加的结果除以列表的长度,得到字类数据的平均值。可以使用`print()`函将结果输出到控制台。 下面是一个示例的代码: ```python data = input("请输入字,用逗号分隔:") numbers = data.split(",") total = 0 count = 0 for num_str in numbers: num = float(num_str) total += num count += 1 avg = total / count print("字类数据的平均值为:", avg) ``` 希望这个回答对你有帮助!如果你还有其他问题,请随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值