成都网站建设设计

将想法与焦点和您一起共享

【openjudge】C++cin;cout常见输入输出-创新互联

目录

成都创新互联公司服务项目包括秀峰网站建设、秀峰网站制作、秀峰网页制作以及秀峰网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,秀峰网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到秀峰省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

cin简介

一、输入的是数组类型

1.一维数组:输入规模n,以及n个数的值。 

2.二维数组(矩):输入规模m*n,以及m*n个数的值。 

3.以0结束的输入

4.以回车结束的输入

二、输入的是字符串行的文本类型


cin简介

cin可以连续从键盘读取想要的数据,以空格、tab或换行作为分隔符。

(1)cin>>等价于cin.operator>>(),即调用成员函数operator>>()进行读取数据。
(2)当cin>>从缓冲区中读取数据时,若缓冲区中第一个字符是空格、tab或换行这些分隔符时,cin>>会将其忽略并清除,继续读取下一个字符,若缓冲区为空,则继续等待。但是如果读取成功,字符后面的分隔符是残留在缓冲区的,cin>>不做处理。
(3)不想略过空白字符,那就使用 noskipws 流控制。比如cin>>noskipws>>input;

C++中关于输入cin的一些总结 - Mini_Coconut - 博客园 (cnblogs.com)

(45条消息) C++中 cin 的详细用法_keepwalking111的博客-博客_c++ cin

#includeusing namespace std;
int main(){
    char a;
    int b;
    float c;
    cin>>a>>b>>c;
}

程序:cin>>a>>b>>c;

在屏幕中一次输入:a[回车]11[回车]5.56[回车],

结果:a='a',b=11,c=5.56

一、输入的是数组类型 1.一维数组:输入规模n,以及n个数的值。 

1061:求整数的和与均值

【输入】

输入第一行是一个整数n,表示有n个整数。

第2~n+1行每行包含1个整数。每个整数的绝对值均不超过10000。

【输入样例】

4

344

222

343

222

方法:先用int n记录输入规模,再用vector+ for循环记录n个数的值。 

int n;
	cin >>n;
	vectorlist(n, 0);
	for (int i = 0; i< n; i++) {
		cin >>list[i];
	}
2.二维数组(矩):输入规模m*n,以及m*n个数的值。 

1125:矩阵乘法

【输入】

第一行为n, m, k,表示A矩阵是n行m列,B矩阵是m行k列,n, m, k均小于100。

然后先后输入A和B两个矩阵,A矩阵n行m列,B矩阵m行k列,矩阵中每个元素的绝对值不会大于1000。

【输入样例】

3 2 3

1 1

1 1

1 1

1 1 1

1 1 1

int m, n, k;
	cin >>m >>n >>k;
	vector>matrixA(m, vector(n, 0));
	vector>matrixB(n, vector(k, 0));
	for (int i = 0; i< m; ++i) {
		for (int j = 0; j< n; ++j) {
			cin >>matrixA[i][j];
		}
	}
	for (int i = 0; i< n; ++i) {
		for (int j = 0; j< m; ++j) {
			cin >>matrixB[i][j];
		}
	}
3.以0结束的输入

1218. 取石子游戏

【输入】

输入包括多数数据。每组数据一行,包含两个整数a和b,表示初始时石子的数目。

输入以两个0表示结束。 

int n, m;
	while (cin >>n >>m) {
		if (n == 0 && m == 0) break;
		cout<< "win";
	}

注:while的输入输出方式,是输入第一个样例,输出第一个结果;再输入第二个样例,再输出第二个结果...直到遇到if (n == 0 && m == 0)就跳出while

1216 红与黑

【输入】
包括多个数据集合。每个数据集合的第一行是两个整数W和H,分别表示x方向和y方向瓷砖的数量。W和H都不超过20。在接下来的H行中,每行包括W个字符。每个字符表示一块瓷砖的颜色,规则如下:

1)‘.’:黑色的瓷砖;

2)‘#’:白色的瓷砖;

3)‘@’:黑色的瓷砖,并且你站在这块瓷砖上。该字符在每个数据集合中唯一出现一次。

当在一行中读入的是两个零时,表示输入结束。

【输出】
对每个数据集合,分别输出一行,显示你从初始位置出发能到达的瓷砖数(记数时包括初始位置的瓷砖)。

【输入样例】
6 9 
....#.
.....#
......
......
......
......
......
#@...#
.#..#.
0 0

int n, m;
	while (cin >>n >>m) {
		if (n == 0 && m == 0) break;
		else {
			vector>floor(m, vector(n, 'a'));
			for (int i = 0; i< m; ++i) {
				for (int j = 0; j< n; ++j) {
					cin >>floor[i][j];
				}
			}
			cout<< dfs(floor);
		}
	}

这是一个while和for结合的例子。

while 控制n组数据的输入输出,每while循环一次就是一组数据的输入输出,直到遇到0 0,停止输入。

一次while循环里的for循环是一组数据的输入。

4.以回车结束的输入
int n;
	cin >>n;//输入完n之后不能回车,要空格,再继续输入n个数
	vectorarray(n, 0);
	int index = 0;
	while ((cin.peek() != EOF) && (cin.peek() != '\n'))
	{
		cin >>array[index];
		cout<< array[index];//输入完统一输出
		
		index++;
	}
二、输入的是字符串行的文本类型

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文名称:【openjudge】C++cin;cout常见输入输出-创新互联
链接分享:http://chengdu.cdxwcx.cn/article/dcshog.html