[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;
}

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

相关推荐
充气大锤6 分钟前
前端实现流式输出配合katex.js
开发语言·前端·javascript·ai·vue
无限进步_9 分钟前
二叉搜索树(BST)详解:从原理到实现
开发语言·数据结构·c++·ide·后端·github·visual studio
邝邝邝邝丹11 分钟前
vue2-computed、JS事件循环、try/catch、响应式依赖追踪知识点整理
开发语言·前端·javascript
郝学胜-神的一滴15 分钟前
机器学习特征选择:深入理解移除低方差特征与sklearn的VarianceThreshold
开发语言·人工智能·python·机器学习·概率论·sklearn
松涛和鸣17 分钟前
60、嵌入式定时器深度解析:EPIT与GPT
c语言·arm开发·单片机·嵌入式硬件·gpt·fpga开发
多多*19 分钟前
计算机网络相关 讲一下rpc与传统http的区别
java·开发语言·网络·jvm·c#
小旭952723 分钟前
【Java 基础】IO 流 全面详解
java·开发语言
吃吃喝喝小朋友27 分钟前
JavaScript事件
开发语言·前端·javascript
ONExiaobaijs30 分钟前
Java jdk运行库合集
java·开发语言·python
wangjialelele30 分钟前
二刷C语言后,一万字整理细碎知识点
c语言·开发语言·数据结构·c++·算法·cpp