第2个回答 2020-11-06
360问答
c语言问题:怎样用scanf获取int类型的数组
fif5892 LV9
2016-12-02
c语言问题:怎样用scanf获取int类型的数组怎么输入数组,其中数组a长度为100,但是我只想输入几个元素,怎么弄,求大神... c语言问题:怎样用scanf获取int类型的数组怎么输入数组,其中数组a长度为100,但是我只想输入几个元素,怎么弄,求大神 展开
满意答案
RO专卖
LV9
2016-12-04
可以这样用,比如
int a[100] = {0}; //全部元素初始化为0
int n= 10; // 你想输入的元素的个数
int i=0;
for(i=0; i<n; i++) {
scanf("&d", &a[i]);
}
追问 : 可是我的元素的个数未知,是不确定的,这咋整的啊
追答 : 元素个数未知,你可以这样 第一种方法,设定一个大数组,保证能存储你的所有数据,比如 int a[4096]; 第二种方法,使用动态数组,根据需要的大小,进行动态分配内存,比如 int n = 128; // n是你需要的数字个数 int *p = (int*)malloc(sizeof(int) * n);
追问 : 。。。我只想说第一种方法不行的,第二种方法我还没学到(▼皿▼#)
第3个回答 2020-11-05
WangLanguager
关注
C语言scanf:读取从键盘输入的数据(含输入格式汇总表) 转载
2019-04-02 18:23:37
9点赞
WangLanguager
码龄9年
关注
程序是人机交互的媒介,有输出必然也有输入,第三章我们讲解了如何将数据输出到显示器上,本章我们开始讲解如何从键盘输入数据。在C语言中,有多个函数可以从键盘获得用户输入:
scanf():和 printf() 类似,scanf() 可以输入多种类型的数据。
getchar()、getche()、getch():这三个函数都用于输入单个字符。
gets():获取一行数据,并作为字符串处理。
scanf() 是最灵活、最复杂、最常用的输入函数,但它不能完全取代其他函数,大家都要有所了解。
本节我们只讲解 scanf(),其它的输入函数将在下节讲解。
scanf()函数
scanf 是 scan format 的缩写,意思是格式化扫描,也就是从键盘获得用户输入,和 printf 的功能正好相反。
我们先来看一个例子:
#include <stdio.h>
int main()
{
int a = 0, b = 0, c = 0, d = 0;
scanf("%d", &a); //输入整数并赋值给变量a
scanf("%d", &b); //输入整数并赋值给变量b
printf("a+b=%d\n", a+b); //计算a+b的值并输出
scanf("%d %d", &c, &d); //输入两个整数并分别赋值给c、d
printf("c*d=%d\n", c*d); //计算c*d的值并输出
return 0;
}
运行结果:
12↙
60↙
a+b=72
10 23↙
c*d=230
↙表示按下回车键。
从键盘输入12,按下回车键,scanf() 就会读取输入数据并赋值给变量 a;本次输入结束,接着执行下一个 scanf() 函数,再从键盘输入 60,按下回车键,就会将 60 赋值给变量 b,都是同样的道理。