scanf输入整型数组

ziyaziya 2009-08-29 10:25:02
定义了一个数组
array[MAX];

for(i = 0;i<MAX;i++)
scanf("%d",&array[i]);

若想输入任意数目的整型变量的个数,数组中不用完全定义完整。。。
请问结束提示符是什么,或者应该怎么在语句中设置?
...全文
4014 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qkhhxkj102 2009-09-03
  • 打赏
  • 举报
回复
这样也行的
norahsmile 2009-09-03
  • 打赏
  • 举报
回复
scanf()函数的返回值是int型。是获得成功输入的数据的个数。
所以
int i=0;
while(scanf("%d",a[i])==1)//当输入的是整型数据时
i++;
当输入非int型数据时退出while循环
fiveyes 2009-08-31
  • 打赏
  • 举报
回复
如果能够有一个特殊的值来代表输入结束,那就可以采取简单的代码,如果不能,那就需要增加另一个输入,来确认是否结束。
当无法根据特殊值来结束时,大概就得这样:

#include <stdio.h>
#define MAX 100

int main()
{
int array[MAX] = {0};
int i = 0, input;
do
{
printf("是否输入第%d个数值?(1是,0否)", i+1);
scanf("%d", &input);
if(input == 0) break;
else
{
printf("请输入:");
scanf("%d", &array[i]);
}
i++;
}while(i<MAX);

return 0;
}

闲闲的程序猿 2009-08-31
  • 打赏
  • 举报
回复
for。。。
{
if(scanf("%d",&array[i])!=EOF) continue;
else break;
}
u0fly 2009-08-29
  • 打赏
  • 举报
回复
学习了 很有用啊
xoliver563 2009-08-29
  • 打赏
  • 举报
回复

if( scanf("%d",&array[i])<=0 )break;

我是初学者,看到这样的语句,真的学习了。
飞天御剑流 2009-08-29
  • 打赏
  • 举报
回复
[Quote=引用楼主 ziyaziya 的回复:]
定义了一个数组
array[MAX];

for(i = 0;i <MAX;i++)
    scanf("%d",&array[i]);

若想输入任意数目的整型变量的个数,数组中不用完全定义完整。。。
请问结束提示符是什么,或者应该怎么在语句中设置?
[/Quote]

你可以输入非数字字符来结束scanf,这时候scanf的返回值小于等于0。


array[MAX];
for(i = 0;i <MAX;i++)
if( scanf("%d",&array[i]) <= 0 ) break;
lsldd 2009-08-29
  • 打赏
  • 举报
回复
while(cin >> a[i] )
{
}
在命令提示符中是Ctrl+Z表示输入结束
在vc中可以设置用文本输入,比如在1.txt中写好所有数组的值
工程属性中设置输入文件
>>1.txt
资源下载链接为: https://pan.quark.cn/s/9e7ef05254f8 本资源为《算法设计与分析》课后习题答案,包含多个编程题目及其详细代码实现和解析,覆盖数组操作、二维数组操作、循环控制等知识点,有助于读者深入理解算法设计与分析的核心概念与技术。 知识点1:数组操作 题目3.1:要求读取用户输入的整数n并存储到数组中,接着对数组进行操作并输出结果。涉及知识点包括数组操作、malloc函数、scanf函数和printf函数。代码使用C语言,定义整型数组buf,通过malloc分配内存,读取用户输入的n并存储,随后将数组元素初始化为2,再通过嵌套循环递增元素值,最后用printf输出结果。 知识点2:二维数组操作 题目3.2:要求读取用户输入的6个数字并存入二维数组,然后操作数组并输出结果。涉及二维数组操作、scanf和printf函数。代码中定义二维整型数组buf,读取用户输入的6个数字存储到数组中,最后通过循环输出数组元素。 知识点3:循环控制 题目3.3:要求使用循环对二维数组进行操作并输出结果。涉及知识点包括循环控制、数组操作、scanf和printf函数。代码中定义二维整型数组buf,通过循环对数组进行操作,并将结果输出。 知识点4:数组操作 题目4:要求使用循环对二维数组进行操作并输出结果。涉及数组操作、循环控制、scanf和printf函数。代码中定义二维整型数组buf,通过循环对数组进行操作,并将结果输出。 知识点5:循环控制 题目5:要求使用循环对二维数组进行操作并输出结果。涉及循环控制、数组操作、scanf和printf函数。代码中定义二维整型数组buf,通过循环对数组进行操作,并将结果输出。 本资源通过多个编程题目,帮助读者系统掌握算法设计与分析的关键知识点,提升编程能力。

70,027

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧