noip第二弹 输入输出
1.scanf
scanf是一种较为快速的输入语句,但是对于cout较为难写
#include <bits/stdc++.h>
using namespace std;
int main(){
int a;
scanf("%d",&a);//整型用%d变量名前有&
float b;
scanf("%f",&b);//分数用%f变量名前有&
char c;
scanf("%c",&c);//单字符用%c变量名前有&
char d[1000];
scanf("%s",d);//想输入随机长度的字符串用%s,变量名前没有&
long long int e;
scanf("%lld",&e);//64位整型用%lld变量名前有&
return 0;
}
2. cin
cin虽然非常容易写,但是它较为慢。不过在noip中卡输入输出的题目实在少。所以大多数C++选手的习惯就是写cin和cout。
#include <bits/stdc++.h>
using namespace std;
int main(){
int a;
cin>>a
float b;
cin>>b;
char c;
cin>>c;
char d[1000];
cin>>d;
long long int e;
cin>>e;
//还能加个string
string f;
cin>>f;
//或者
getline(cin,f);
return 0;
}
3. printf
printf是较为快速的输出语句
#include <bits/stdc++.h>
using namespace std;
int main(){
int a=1;
printf("%d",a);
float b=2.1;
printf("%f",b);
char c='a';
printf("%c",c);
char d[1000]={'a','b','c','d'};
printf ("%s",d);
long long int e=15411231651;
printf("%lld",e);//都不需要"&"
return 0;
}
4. cout
#include <bits/stdc++.h>
using namespace std;
int main(){
int a=1;
cout<<a;
float b=2.1;
cout<<b;
char c='k';
cout<<c;
char d[1000]={'a','b','c'};
cout<<d;
long long int e=1513210120151;
cout<<e;
return 0;
}//
5. printf VS cout
代码:
//printf
#include <bits/stdc++.h>
using namespace std;
int main(){
int a=1;
for(int i=0;i<1000000;i++){
printf("%d",a);
}
return 0;
}
//cout
#include <bits/stdc++.h>
using namespace std;
int main(){
int a=1;
for(int i=0;i<1000000;i++){
cout<<a;
}
return 0;
}
速度(1000000次)(十几年前的电脑):
scanf:
cout: