当前位置:首页 > C++知识 > 正文内容

数组的不确定长度输入

亿万年的星光5年前 (2021-02-06)C++知识2379

0.前言

我们在学习数组的时候一般都会告诉你数组的长度,然后for循环去遍历。但是有一类问题是没有n的,也就是没有告诉长度的。


1.方法


第一种:(数组)

#include<iostream>
#include<cstdio>
using namespace std;
int main() {
	int a[100];
	int t=0;
	int n;
	while(scanf("%d",&n)!=EOF) {
		a[t]=n;
		t++;
	}
	for(int i=0; i<t; i++) {

		cout<<a[i]<<" ";
	}
}
//按ctrl+z 停止


第二种:字符数组

#include<iostream>
#include<cstdio>
using namespace std;
int main() {

	char str[10001]; //字符数组
	while(cin>>str) { //不确定长度
		
	}
	cout<<str;
	return 0;
}


第三种:(数组)

#include<cstdio>
#include<iostream>

using namespace std;
int main(){
	int arr[1001];
	int k=0;
	while(cin>>arr[k]){
		k++;
	}
	for(int i=0;i<k;i++){
		cout<<arr[i]<<" ";
	}
	return 0;
}



扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

如何计算一个程序的运行时间(防止超时)

再一些OJ系统中,做题的时候常常会超时,但是很多人不知道自己的程序是否会超时,不知道如何检查自己的程序。这篇文章主要介绍几种监测自己程序运行时间的程序。头文件<time.h> ...

【题解】最短路径问题

【题目描述】平面上有n个点(n≤100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现...

【初级篇】求最大公约数的方法

1.辗转相除法int gcd(int a,int b)  {       if(a%b==0...

C++小项目——实时钟表

C++小项目——实时钟表

0.前言在很多游戏中,我们要使用时间,这个时间一个是系统当前的时间,一个是服务器给你的时间。这篇文章我们尝试做一个模拟时钟。效果图如下1.任务分解1.首先我们尝试使用easyx来画一个。基本框架如下:...

【题解】奶牛的回音

【题目描述】奶牛们灰常享受在牛栏中牟叫,因為她们可以听到她们牟声的回音。虽然有时候并不能完全听到完整的回音。Bessie曾经是一个出色的秘书,所以她精确地纪录了所有的牟叫声及其回声。她很好奇到底两个声...

分离整数的各个位

分离整数的各个位

        平常做题的时候有很多时候会遇到分离整数的各个位的操作,比如求回文数,数字反转等题目。今天简单总结一下分离...