// pyongyangtime.c
#include <string.h>
#include <stdlib.h>

int main( int argc, char *argv[] )
{
char const prefix[] = "/bin/date --date='TZ=\"Asia/Pyongyang\" ";
int lng_arg;
char *buf;
if( argc != 2 ) return -1;
lng_arg = strlen( argv[1] );
buf = malloc( lng_arg + sizeof( prefix ) + 1 );
if( buf == NULL ) return -1;
strcpy( buf, prefix );
strcpy( buf + sizeof( prefix ) - 1, argv[1] );
buf[ sizeof( prefix ) + lng_arg - 1 ] = '\'';
buf[ sizeof( prefix ) + lng_arg ] = '\0';
putenv( "TZ=Asia/Tokyo" );
system( buf );
return 0;
}

$ clang -o pyongyangtime pyongyangtime.c
$ ./pyongyangtime "03/10/2016 22:21:16"
2016年 3月 10日 木曜日 22:51:16 JST
$ ./pyongyangtime 1:30
2016年 3月 11日 金曜日 02:00:00 JST

OS: GNU/Linux