[C语言]多组输入的几种方法

1. 计数法

cpp 复制代码
#include <stdio.h>
int main()
{
	int n = 0;
	int i = 100;
	while (i--)
	{
		scanf("%d", &n);
		printf("%d\n", n);
	}
	return 0;
}

2.使用EOF标志处理多组输入

在C语言中,scanf函数返回成功读取的项目数。当遇到文件结束时,scanf返回EOF,表示没有更多的输入。(EOF是一个预定义的常量,等于-1。通过判断scanf的返回值否为EOF决定是否退出循环。)

cpp 复制代码
#include <stdio.h>
int main()
{
    int n;
    while (scanf("%d",&n) != EOF)
    {
        printf("%d\n", n);
    }
    return 0;
}

这种方法适用于处理包含字符和数字的多组输入‌。

3.使用EOF进行字符多组输入

在使用scanf读取数字时,回车键会被scanf消耗,因此在读取字符时需要使用getchar()来吸收回车符。

cpp 复制代码
int main()
{
    char n;
    while (scanf("%c",&n) != EOF)
    {
        getchar();
        printf("%c\n", n);
    }
    return 0;
}

这种方法适用于处理包含字符和数字的多组输入‌。

相关推荐
打工仔折腾 AI39 分钟前
用 Dashlet 把极空间 NAS 服务入口整理成统一导航首页的实践
java·开发语言·人工智能·后端·python·rpc·ai agent 实战
MATLAB代码顾问1 小时前
Simulink PI 参数扫描与批量仿真完整 MATLAB 代码
开发语言·matlab
Want5951 小时前
Python跳动的爱心②
开发语言·python·数学建模
Navigator_Z2 小时前
LeetCode //C - 1293. Shortest Path in a Grid with Obstacles Elimination
c语言·算法·leetcode
小羊没烦恼!2 小时前
T-SQL查询进阶--理解SQL SERVER中的分区表
服务器·开发语言·前端·javascript·html
爱吃香菜的初学者2 小时前
十六.Linux——多线程(2)
linux·运维·开发语言
jeo陽2 小时前
04-循环实战:素数、最大公约数、级数求和与枚举法
c语言·开发语言·数据结构
暖核3 小时前
kubeadm 集群运维:Worker 节点下线删除、整套集群销毁重建指南
运维·开发语言·php
tachibana23 小时前
Go 语言里的 Context 是什么?
开发语言·后端·golang·go·语言
天桥下的卖艺者3 小时前
R语言使用ggcube包轻松绘制文章中的各类3D图形
开发语言·3d·r语言