C语言格式化输入不定长数组
先随便写写,有空再整理。
直接贴代码
#include <stdio.h>
#include <stdlib.h> //从一行标准输入中格式化输入一个不定长数组
void inputVec (); //读入给定行数的不定长数组
void inputVecs1 (); //读入不确定行数不定长数组
void inputVecs2 (); void main ()
{
inputVecs1 ();
return;
} void inputVecs1 ()
{
while (!feof(stdin))
{
int size = 0;
int i = 0;
int k = 0;
int arr[64] = {0}; i = scanf ("%d", &arr[size]);
k = getchar();
++size;
while (EOF != i && ',' == k && 64 >= size)
{
i = scanf ("%d", &arr[size]);
k = getchar();
++size;
printf ("%d:%d ", i, k);
} printf ("\n%d\n",size); for (i = 0; i < size; ++i)
{
printf ("%d ", arr[i]);
}
printf ("\n"); }
} void inputVecs2 ()
{
int n = 0;
int j = 0;
scanf ("%d", &n);
while (j < n)
{
int size = 0;
int i = 0;
int k = 0;
int arr[64] = {0}; i = scanf ("%d", &arr[size]);
k = getchar();
++size;
while (EOF != i && ',' == k && 64 >= size)
{
i = scanf ("%d", &arr[size]);
k = getchar();
++size;
printf ("%d:%d ", i, k);
} printf ("\n%d\n",size); for (i = 0; i < size; ++i)
{
printf ("%d ", arr[i]);
}
printf ("\n"); ++j;
}
} void inputVec ()
{
int size = 0;
int i = 0;
int k = 0;
int arr[64] = {0}; i = scanf("%d", &arr[size]);
k = getchar();
++size;
while (EOF != i && size <= 64 && ',' == k)
{
i = scanf("%d", &arr[size]);
k = getchar();
++size;
printf ("%d:%d ", i, k);
}
printf ("\n%d\n",size); for (i = 0; i < size; ++i)
{
printf ("%d ", arr[i]);
}
printf ("\n");
}
测试数据(控制台输入的话就变成输入一行然后一个回车键,可以把所有内容存到txt中然后重定向):
1,2,3,4,5,6,7,8,9,10
11,12,13,14,15,16,17,18,19,20
21,22,23,24,25,26,27,28,29,30
C语言格式化输入不定长数组的更多相关文章
- Java使用hasNext()输入不定长数组
1 Scanner scan = new Scanner(System.in); 2 String s = scan.nextLine(); 3 Scanner sc = new Scanner(s) ...
- (STL初步)不定长数组:vector
STL是指C++的标准模板库.(存储着一些常用的算法和容器) vector是一个不定长数组.它把一些常用的操作”封装“在vector类型内部. 例如,a是一个vector.1对元素的操作有,可以用a. ...
- 【算法专题】工欲善其事必先利其器—— C++ STL中vector(向量/不定长数组)的常用方法总结
#include<iostream> #include<cstdio> #include<string> #include<vector>//不定长数组 ...
- C++如何返回不定长数组
起初遇到这个问题的时候便得知无法返回,那么为了达到相同的目的,该怎么办呢? 第一个想法便是 int * void() { int * want = new int[size]; //......do ...
- STL之vector(不定长数组)
vector就是一个不定长数组,另外它把一些常用操作“封装”在了vector类型内部.例如,若a是一个vector,可以用a.size()读取它的大小,a.resize()改变大小,a.push_ba ...
- C语言格式化输入输出函数
一:格式输出函数printf() 1.调用形式一般为:printf("格式化控制字符串",输出表列): 2.格式化控制字符串用于指定输出格式,它有三种形式: 1.格式说明符:规定了 ...
- 【STL初步】不定长数组:vector + 集合:set + 映射:map
一.vector 为了节省空间,有时我们会使用动态数组vector. 定义动态数组 vector<类型名>变量名 vector<int>que //定义que为一个int类型的 ...
- 【OI】C++STL 不定长数组 vector
Vector 本来是向量的意思,只不过在用法上类似于一个不限长度的数组. 定义语法:vector<数据类型> 名称; 一.头文件:<vector> (bits/stdc++请忽 ...
- java二维不定长数组测试
package foxe; import javax.swing.JEditorPane;import javax.swing.JFrame; /** * @author fooxe * * @see ...
随机推荐
- PHPCMS V9 非超级管理员批量移动权限
第一步:确实存在这个问题,修改方法是在后台->扩展->菜单管理里面,管理内容里面添加子菜单, 第二步:在操作完以上步骤后,再在角色权限管理里面再重新赋权限就可以了
- 解决Gradle生成Eclipse支持后,发布到Tomcat丢失依赖jar包的问题
最近一个项目中,使用号称下一代构建工具的Gradle构建项目. 使用中发现一个问题,Gradle从中央库下载的jar文件在系统的其它目录,使用gradle eclipse添加Eclipse支持时,ja ...
- jQuery 点击显示再次点击隐藏
<html> <head> <script type="text/javascript" src="/jquery/jquery.js&qu ...
- js语法重点
1:最新的ES6规范引入了新的数据类型Map:var m = new Map([['Michael', 95], ['Bob', 75], ['Tracy', 85]]);m.get('Michael ...
- mysql取前几行数据limit用法
转自http://www.cnblogs.com/study100/archive/2013/07/30/3224250.html 在mysql中是没有top关键字的,在mysql中可以用limit来 ...
- [WebServer] Windows操作系统下 Tomcat 服务器运行 PHP 的环境配置
前言: 由于本人在开发和学习过程中需要同时部署 JavaWeb 和 PHP 项目,于是整理了网上的一些相关资料,并结合自己的实际操作,记录于此,以供参考. 一.环境(64bit): 1.操作系统.To ...
- 基础篇-初步认识PE格式
1 PE(Portable Executable)格式,是Win32环境可移植可执行文件(如exe.dll.vxd.sys和vdm等)的标准文件格式.PE格式衍生于早期建立在VAX(R)VMS(R)上 ...
- android studio 换护眼的颜色步骤
设置--->Editor-->General-->Default Text-->Background护眼色是#D2E3C7
- angularjs ng-click
在angularjs的controller中一段代码,展示如下: var sortList = new SortList(); sortList.setSorts([$scope.year_inves ...
- Windows进程崩溃问题定位方法
Linux上进程崩溃通常会生成core文件,用gdb打开后执行bt命令即可查看堆栈.而在Windows平台上,我们通常会采用MiniDumpWriteDump来进行堆栈转储,而这需要对系统Api有一定 ...