OJ常用入出力(C/C++)
18640 ワード
OJ常用入出力[C/C++] 1入力 2出力 3デバッグおよびその他の 1入力
2出力
3デバッグおよびその他
//
scanf("%d", &int1);
scanf("%lld", &llint1);
scanf("%f", &float1/double1);
scanf("%c", &char1);
scanf("%s", &string1);
// 1,
inline bool scan_d(T &ret) {
char c; int sgn;
if(c=getchar(),c==EOF) return 0; //EOF
while(c!='.'&&(c<'0'||c>'9')) c=getchar();
sgn=(c=='.')?.1:1;
ret=(c=='.')?0:(c-'0');
while(c=getchar(),c>='0'&&c<='9') ret=ret*10+(c-'0');
ret*=sgn;
return 1;
}
scan_d(int1);
// 2,
inline bool scan_d(int &num) {
char in;bool IsN=false;
in=getchar();
if(in==EOF) return false;
while(in!='-'&&(in<'0'||in>'9')) in=getchar();
if(in=='-'){ IsN=true;num=0;}
else num=in-'0';
while(in=getchar(),in>='0'&&in<='9'){
num*=10,num+=in-'0';
}
if(IsN) num=-num;
return true;
}
scan_d(int1);
// 3,C++
ios::sync_with_stdio(false);
cin >> int1 >> int2;
2出力
//
printf("Yes
");
printf("%d", int1);
printf("%f", &float1/double1);
printf("%c", char1);
printf("%s", string1);
putchar(' ');//putchar
puts(ans ? "Yes" : "No");// , '\0'
// 1,
inline void printf_d(int x) {
if(x>9) printf_d(x/10);
putchar(x%10+'0');
}
printf_d(int1);
// 2,
void printf_d(int num) {
if(num < 0) {
putchar('-');
num = -num;
}
int ans[10], top = 0;
while(num != 0) {
ans[top++] = num % 10;
num /= 10;
}
if(top == 0) putchar('0');
for(int i = top-1; i >= 0; i--) {
char ch = ans[i] + '0';
putchar(ch);
}
}
printf_d(int1);
3デバッグおよびその他
//
freopen("in.txt", "r", stdin);
freopen("out.txt", "w", stdout);
setbuf(stdout, NULL);
//
typedef long long ll;
typedef int rank;