在线编程的简单输入输出

2021年09月15日 阅读数:4
这篇文章主要向大家介绍在线编程的简单输入输出,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

# 1、输入函数

## 1.循环输入
```while(cin>>a>>b)```
//一直循环就不使用条件跳出,根据条件判断跳出就在循环中添加判断跳出语句this

//特殊的循环判断语句:
```if (cin.get() == '\n')```
cin.get()是在扫描器中一个一个读取输入,空格和回车也能够被读取.net

## 2.根据输入肯定循环次数
```cin>>n;while (n-->0)```blog

## 3.输入转换
cin.get()能够单个以字符形式读入数据,以后进行数据转换
转换方法以下:
```
char s[15] = "123.432,432";
int n;double f1;int f2;//n是转换字符个数
sscanf(s,"%lf , %d%n " , &f1,&f2,&n) ;
```
C++中另外也有对应的转换函数在头文件stdlib.h里面,对应的函数为:
itoa(integer to alphanumeric)表示从整型到字符串
atoi(alphanumeric to integer)表示从字符串到整型
```
char ch[5],ch2[5];
int a = atoi(ch);//ch表示须要转换的字符
cout << a << endl;
_itoa_s(a,ch2,10);//a表示须要转换的数字,ch2表示转换后的字符,10是数字转换的进制
cout << ch2 << endl;
```排序

读入数字和字符的组和的时候,能够使用cin以后再使用cin.get()来读取字符,以后的数字又能够从新进行读取了
```
int a, b,;char ch[3];
cin >> a;
ch[0] = cin.get();
cout << a << endl;
cin >> b;
ch[1] = cin.get();
cout << b << endl;
```内存

## 4.根据输入动态分配内存
```
int a;
cin>>a;
int *p=NULL;
p=new int[a];
...
delete [] p;
```ci

# ps
C++中有系统定义的排序函数sort在头文件algorithm中
```
int a[]={2,4,1,3,5};
sort(a,a+5);//第一个参数是数据的第一个地址,第二个是最后一个数据的地址,还有第三个参数,用于排序顺序,默认为从小到大
sort(a,a+5,compare);//从大到小排序
bool compare(int a,int b){
return a>b;
}
```字符串

## 5.cin.get和cin.getline
[转csdn查看具体细节](https://blog.csdn.net/a3192048/article/details/80303547)get

# ps
关于stringstream
把string类型的数据进行数据流操做,能够进行数据的自动转换
```
string s;
getline(cin,s);//输入abc 123
stringstream stream(s);//也能够直接stream<<"this is input";
int a;
string s1;
stream >> s1 >> a;
cout << a << " " << s1 << endl;
stream.str(" ")
```input

# 2、输出
#
## 1.循环输出
除了for(int i...),对于遍历输出,使用for(auto:c n)更方便快捷
## 2.使用逗号,最后一个没有逗号
这种就是在循环中最后一个不输出,本身手动写一个cout