首页 > 代码库 > C语言格式化输入不定长数组
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语言格式化输入不定长数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。