というわけで今回は情報オリンピック予選に使うためのソースコードのテンプレートです。
どうぞご自由にお使いください。
#include
int main(int argc,char* argv[]) {
char infile[255],outfile[255];
FILE* in;
FILE* out;
/*declare values*/
/*open files*/
sprintf(infile,"%s-in%s.txt",argv[1],argv[2]);
sprintf(outfile,"%s-out%s.txt",argv[1],argv[2]);
in=fopen(infile,"r");
if(in==NULL)return 1;
out=fopen(outfile,"w");
if(out==NULL) {
fclose(in);
return 1;
}
/*do work*/
/*file close*/
fclose(in);
fclose(out);
return 0;
}
2011-yo-t1 1
と指定します。
入力の番号と出力の番号を一度に指定することで、入力と出力の対応を間違えないようになっています。
使用例はこちらです。
nを一行で読み込んでn!を一行で出力するプログラムです。
#include
int main(int argc,char* argv[]) {
char infile[255],outfile[255];
FILE* in;
FILE* out;
/*declare values*/
unsigned long long n;
unsigned long long ans;
unsigned long long i;
/*open files*/
sprintf(infile,"%s-in%s.txt",argv[1],argv[2]);
sprintf(outfile,"%s-out%s.txt",argv[1],argv[2]);
in=fopen(infile,"r");
if(in==NULL)return 1;
out=fopen(outfile,"w");
if(out==NULL) {
fclose(in);
return 1;
}
/*do work*/
fscanf(in,"%I64u",&n);
ans=1;
for(i=1;i<=n;i++)ans*=i;
fprintf(out,"%I64u\n",ans);
/*file close*/
fclose(in);
fclose(out);
return 0;
}