結果
| 問題 |
No.9002 FizzBuzz(テスト用)
|
| ユーザー |
|
| 提出日時 | 2017-03-26 22:34:38 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 5,000 ms |
| コード長 | 1,010 bytes |
| コンパイル時間 | 202 ms |
| コンパイル使用メモリ | 25,088 KB |
| 実行使用メモリ | 6,940 KB |
| 最終ジャッジ日時 | 2024-07-06 06:34:56 |
| 合計ジャッジ時間 | 570 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 4 |
コンパイルメッセージ
main.cpp: In function ‘int main(int, char**)’:
main.cpp:60:46: warning: ‘__builtin___sprintf_chk’ may write a terminating nul past the end of the destination [-Wformat-overflow=]
60 | sprintf( szOther, "%d", i );
| ^
In file included from /usr/include/stdio.h:894,
from main.cpp:1:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:38:34: note: ‘__builtin___sprintf_chk’ output between 2 and 11 bytes into a destination of size 10
38 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
39 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
40 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//標準入力取得(1行)
int GetStdin(char* pszStr, int lMaxLen)
{
int lLen = 0;
int lNum = 0;
memset(pszStr, 0, lMaxLen);
if (fgets(pszStr, lMaxLen, stdin))
{
lLen = strlen(pszStr);
if (lLen >= 1)
{
if (pszStr[lLen - 1] == 0x0A)
{
pszStr[lLen - 1] = 0;
lLen--;
}
}
}
lNum = atoi( pszStr );
// return(lLen);
return(lNum);
}
int main(int argc, char *argv[])
{
char szFizz[] = "Fizz";
char szBuzz[] = "Buzz";
char szFizzBuzz[] = "FizzBuzz";
char szOther[10] = "";
char *psOutput = 0;
char szCount[32];
char* pszStdin = 0;
int lStdinLen = 0;
int lCount = GetStdin( szCount, 32 );
for( int i = 1; i <= lCount; i++ )
{
if( i % 15 == 0 )
psOutput = szFizzBuzz;
else if( i % 3 == 0 )
psOutput = szFizz;
else if( i % 5 == 0 )
psOutput = szBuzz;
else
{
sprintf( szOther, "%d", i );
psOutput = szOther;
}
printf( "%s\n", psOutput );
}
return 0;
}