21xrx.com
2024-09-17 04:25:08 Tuesday
登录
文章检索 我的文章 写文章
如何在C语言中输入多个整数
2023-06-13 20:56:39 深夜i     --     --
C语言 输入整数 scanf()函数 gets()函数 sscanf()函数 fgets()函数 strtok()函数

C语言是一门广泛应用的高级编程语言,常用于系统软件、游戏、嵌入式系统、图像处理等领域。在使用C语言编写程序时,往往需要输入多个整数,本篇文章将介绍使用C语言输入多个整数的方法。

一、使用scanf()函数输入多个整数

scanf()函数是C语言中的标准输入函数,可以用来输入各种类型的数据。输入多个整数时,可以依次使用多个%s格式控制符,用空格或回车键隔开。例如:


int a, b, c;

scanf("%d %d %d", &a, &b, &c);

上述程序段首先定义了三个整型变量a、b、c,然后使用scanf()函数输入三个整数。注意,每个%s格式控制符后面都需要加上对应整数变量的地址符&,否则输入的整数将无法存储到变量中。

二、使用gets()函数和sscanf()函数输入多个整数

gets()函数可以输入一行字符串,同时包含多个整数,这时可以使用sscanf()函数解析字符串并将整数存储到变量中。例如:


char str[100];

int a, b, c;

gets(str);

sscanf(str, "%d %d %d", &a, &b, &c);

上述程序段首先定义了一个字符串数组str和三个整型变量a、b、c,然后使用gets()函数输入一行字符串。接着使用sscanf()函数解析字符串,按照%d格式控制符将三个整数分别存储到a、b、c三个变量中。

三、使用fgets()函数和strtok()函数输入多个整数

fgets()函数可以输入一行字符串,与gets()函数不同的是,fgets()函数可以指定输入的字符数和输入流,同时也可以避免缓冲区溢出的问题。输入多个整数时,可以使用strtok()函数将字符串按照空格或其他指定分隔符划分为多个子字符串,并逐个解析成整数。例如:


char str[100];

int a[10], i = 0;

fgets(str, 100, stdin);

char *p = strtok(str, " ");

while (p != NULL) {

  a[i++] = atoi(p);

  p = strtok(NULL, " ");

}

上述程序段首先定义了一个字符串数组str和一个整型数组a,用来存储输入的多个整数。使用fgets()函数输入一行字符串,指定输入字符数为100,输入流为标准输入。接着使用strtok()函数将字符串按空格划分为多个子字符串,并依次使用atoi()函数将每个子字符串转换为整数,存储到数组a中。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复