Japanese instructions are available C Language Execution Environment Japanese instructions are available 
C Language Execution Environment
ABOUT
ABOUT
Because C language keywords and function names are mapped to Japanese, you can program in Japanese.
Because it allows programming with Japanese keywords, it's easy to understand for beginners.

However, the grammar and functionality are essentially the same as C.
The programming skills acquired in this environment can be directly applied to real-world programming.
Similar Apps
OTHER
We also provide a general C language environment that does not support Japanese commands: a browser-based C language execution environment. It is a complete C programming environment dedicated to WindowsA learning C language development environment is also available.
Programming Area
INPUT
        


File
FILE
     
Converting from standard C to Japanese C
TO JP


Sample program
SAMPLE
Everything is working as expected.

A do-nothing program.
Integer Start(空) { 戻る 0; }


A program that displays Hello, World.
#プラグイン <入出力>

Integer Start(空)
{
    Table示("Hello world");
    戻る 0;
}


A program to display the number 100.
#プラグイン <入出力>

Integer Start(空)
{
    Table示("%d", 100);
    戻る 0;
}


A program to perform basic arithmetic operations.
#プラグイン <入出力>

Integer Start(空)
{
    Table示("%d\n", 10 + 3);
    Table示("%d\n", 10 - 3);
    Table示("%d\n", 10 * 3);
    Table示("%d\n", 10 / 3);
    Table示("%d\n", 10 % 3);
    戻る 0;
}


A program to perform arithmetic operations (addition, subtraction, multiplication, and division) on real numbers.
#プラグイン <入出力>

Integer Start(空)
{
    Table示("%f\n", 10.0 + 3.0);
    Table示("%f\n", 10.0 - 3.0);
    Table示("%f\n", 10.0 * 3.0);
    Table示("%f\n", 10.0 / 3.0);
    戻る 0;
}


A program that assigns 10 to a variable and displays it.
#プラグイン <入出力>

Integer Start(空)
{
    Integer value; /* Variable declaration section */
    value ← 10; /* Substitution part */
    Table示("%d\n", value); /* Display Section */
    戻る 0;
}


A program that performs calculations (addition, subtraction, multiplication, and division) using values assigned to variables.
#プラグイン <入出力>

Integer Start(空)
{
    Integer left;
    Integer right;
    left ← 10;
    right ← 3;
    Table示("%d\n", left + right);
    Table示("%d\n", left - right);
    Table示("%d\n", left * right);
    Table示("%d\n", left / right);
    Table示("%d\n", left % right);
    戻る 0;
}


A program that performs arithmetic operations (addition, subtraction, multiplication, and division) using values assigned to real-valued variables.
#プラグイン <入出力>

Integer Start(空)
{
    Real Number left, right;
    left ← 10;
    right ← 3;
    Table示("%f\n", left + right);
    Table示("%f\n", left - right);
    Table示("%f\n", left * right);
    Table示("%f\n", left / right);
    戻る 0;
}


A program that displays numbers entered from the keyboard.
#プラグイン <入出力>

Integer Start(空)
{
    Integer data;
    keyboard input("%d", &data); /* Input section */
    Table示("%d\n", data);
    戻る 0;
}


A program that calculates and displays the sum of numbers within a range specified by two inputs from the keyboard.
#プラグイン <入出力>

Integer Start(空)
{
    Integer min, max, sum;

    /* Input section */
    Table示("Please enter the minimum and maximum values separated by a comma.:");
    keyboard input("%d , %d", &min, &max);

    /* Calculation Section */
    sum ← (min + max) * (max - min + 1) / 2;

    /* Display section */
    Table示("The total for %d to %d is %d.。\n", min, max, sum);
    戻る 0;
}


A program to correct the score if it exceeds 100 points entered from the keyboard.
#プラグイン <入出力>

Integer Start(空)
{
    Integer score;
    Table示("Please enter the score.:");
    keyboard input("%d", &score);

    もし(score > 100)
    {
        Table示("The input is greater than 100, so I will correct it.\n");
        score ← 100;
    }

    Table示("Your score is %d points.\n", score);
    戻る 0;
}


A program that displays admission fees based on age entered from the keyboard.
#プラグイン  <入出力>
 
Integer Start(空) 
{
    Integer age;
    Table示("Age:");
    keyboard input("%d", &age);

    もし(age <= 3) {
        Table示("toddler:Free\n");
    } ではなくて (age <= 12) {
        Table示("Child:250 Japan Yen\n");
    }Different{
        Table示("Adult:400 Japan Yen\n");
    }

    戻る 0;
}


A program that displays a student's name based on an attendance number entered from the keyboard.
#プラグイン  <入出力>
 
Integer Start(空) 
{
    Integer  no;
    keyboard input( "%d", &no);

    場合minuteけ(no) {
    場合  1:
        Table示( "James\n");
        ブロック脱出; 
    場合  2:
        Table示( "Olivia\n");
        ブロック脱出; 
    場合  3:
        Table示( "Michael\n");
        ブロック脱出; 
    場合  4:
        Table示( "Thomas\n");
        ブロック脱出; 
    その他: 
        Table示( "There's no one with that number.\n");
        ブロック脱出; 
    }

    戻る  0;
}


A program that calculates and displays amounts discounted from 10% to 90% based on input from the keyboard.
#プラグイン  <入出力>
 
Integer Start(空) 
{
    Integer  i, price;

    keyboard input( "%d", &price);

    回数繰り返し(i ← 1; i <= 9; i++) {
        Table示( "%ddiscount = %d\n", i,  (Integer) (price * ((10.0 - i) / 10)));
    }

    戻る  0;
}


Write a program that calculates and displays the month in which your allowance exceeds 1 million yen, given that your allowance doubles each month.
#プラグイン <入出力>

Integer Start(空) 
{
    Real Number money ← 1;
    Integer month ← 1;

    条件繰り返し(money < 1000000) {
        Table示( "%02d Month: %7.0f Yen\n", month, money);
        money *= 2;
        month++;
    }

    Table示( "On the %02dth day of the month, it reached %7.0f yen, exceeding 1 million yen.\n", month, money);

    戻る 0;
}


A program that validates the radius input from the keyboard and then calculates and displays the area of a circle.
#プラグイン  <入出力>
 
Integer Start(空) 
{
    Integer  r;
    Real Number  s;

    最低1回繰り返し{
        Table示( "Radius?:");
        keyboard input( "%d", &r);
    }条件繰り返し(r < 0);

    s  ←  r * r * 3.14;
    Table示( "The area is %f.\n", s);

    戻る  0;
}


Write a program that calculates and displays how many times you need to receive 1% interest to exceed 15000 yen.
#プラグイン <入出力>
 
Integer Start(空) 
{
    Integer year ← 0;
    Real Number money ← 10000;

    条件繰り返し(money < 15000) {
        year++;
        money *= 1.01;
    }

    Table示("%d , %f\n", year, money);

    戻る 0;
}


A program to concatenate and display two strings.
#プラグイン <入出力>
#プラグイン <String>
 
Integer Start(空)
{
    字 str1[12] ← "DRAGON";
    字 str2[] ← "QUEST";
    String連結(str1, str2);
    Table示("%s\n", str1);
    戻る 0;
}


A program to display student data.
#プラグイン <入出力>
#プラグイン <String>
 
型定義 データ
{
    Integer year;/* Grade */
    Integer clas;/* Class */
    Integer number;/* Seat number */
    字 name[64];/* name */
    Real Number stature;/* Height */
    Real Number weight;/* Weight */
} student;

空 student_print(student *data);
 
Integer Start(空)
{
    student data;

    data.year ← 3;
    data.clas ← 4;
    data.number ← 18;
    Stringcopy(data.name, "MARIO");
    data.stature ← 168.2;
    data.weight ← 72.4;

    student_print(&data);/* Call by address */

    戻る 0;
}

空 student_print(student *data)
{
    Table示("[Grade]:%d\n", data->year);/* ->Access via symbol */
    Table示("[Class]:%d\n", data->clas);
    Table示("[Seat number]:%d\n", data->number);
    Table示("[name]:%s\n", data->name);
    Table示("[Height]:%f\n", data->stature);
    Table示("[Weight]:%f\n", data->weight);
    戻る;
}


A program that writes Hello, world to the file test.txt.
#プラグイン <入出力>
#プラグイン <String>
 
型定義 データ
{
    Integer year;/* Grade */
    Integer clas;/* Class */
    Integer number;/* Seat number */
    字 name[64];/* name */
    Real Number stature;/* Height */
    Real Number weight;/* Weight */
} student;

空 student_print(student *data);
 
Integer Start(空)
{
    student data;

    data.year ← 3;
    data.clas ← 4;
    data.number ← 18;
    Stringcopy(data.name, "MARIO");
    data.stature ← 168.2;
    data.weight ← 72.4;

    student_print(&data);/* Call by address */

    戻る 0;
}

空 student_print(student *data)
{
    Table示("[Grade]:%d\n", data->year);/* ->Access via symbol */
    Table示("[Class]:%d\n", data->clas);
    Table示("[Seat number]:%d\n", data->number);
    Table示("[name]:%s\n", data->name);
    Table示("[Height]:%f\n", data->stature);
    Table示("[Weight]:%f\n", data->weight);
    戻る;
}

Correspondence table
TABLE
Currently, there are commands with unverified functionality.
day本語命令 本来のC language Usage Examples
#プラグイン #include #プラグイン
Table示 printf Table示("%d", 100);
= Integer score ← 123;
もし if もし(score > 100) {}
Integer int Integer score ← 123;
戻る return 戻る 0;
#置換 #define #置換 PI 3.14
ブロック脱出 break ブロック脱出;
場合 case case 5;
char 字 c ← 'A';
継続 continue 継続;
その他 default その他:
最低1回繰り返し do 最低1回繰り返し {} 条件繰り返し( i == 0 );
Real Number double Real Number f = 1.2345678;
Different else もし (i == 0) {} Different {};
List enum List COLOR { RED , BLUE , YELLOW };
公開 extern 公開 Integer value ← 123;
半精度Real Number float 半精度Real Number f ← 1.2f;
回数繰り返し for 回数繰り返し(i ← 1; i <= 9; i++) {}
例外処理 goto 例外処理 ERROR;
長Integer long 長Integer score ← 123;
短Integer short 短Integer short ← 1;
符号有 signed 符号有 Integer value ← -100;
符号無 unsigned 符号無 Integer value ← 100;
サイズ sizeof サイズ(array);
静的 static 静的 Integer value ← 1;
データ struct 型定義 データ { Integer year; } student;
場合minuteけ switch 場合minuteけ(no) {}
型定義 typedef typedef Integer tYen;
共用体 union 共用体 tUnion { Real Number x; Integer y; };
void Integer Start(空){}
条件繰り返し while 条件繰り返し(money < 1000000) {}
ではなくて else if もし(age <= 3) {} ではなくて (age <=12) {}Different{};
キーボード stdin FileFromStringを読む(buf, サイズ(buf), キーボード);
Screen stdout FileにCharacterをSave('A' , Screen);
ErrorScreen stderr FileにCharacterをSave('E' , ErrorScreen);
Fileを開く fopen file ← Fileを開く("test.txt", "w");
Fileを閉じる fclose Fileを閉じる(file);
FileFromCharacterを読む fgetc Integer value ← FileFromCharacterを読む( file );
FileFromStringを読む fgets FileFromStringを読む(buf, サイズ(buf), file);
FileにCharacterをSave fputc FileにCharacterをSave('A',file);
FileにStringをSave fputs FileにStringをSave("ABCDEF",file);
FileFromnumericsを読む fread FileFromnumericsを読む(buf, サイズ(Integer), 10, file);
FileにnumericsをSave fwrite FileにnumericsをSave(buf, サイズ(Integer), 10, file);
FileにFormatでStringをSave fprintf FileにFormatでStringをSave(file,"%d,%d",a,b);
FileFromFormatでStringを読む fscanf FileFromFormatでStringを読む(file, "%d,%d",&a,&b);
Fileの位置を取得 ftell Integer pos ← Fileの位置を取得(file);
Fileの位置を変更 fseek Fileの位置を変更(file,0,SEEK_SET);
Fileの最後を判定 feof もし(Fileの最後を判定(file)) {}
FileのErrorを判定 ferror もし(FileのErrorを判定(file)) {}
FileのErrorをInitialization clearerr FileのErrorをInitialization(file);
Fileを強制Save fflush Fileを強制Save(file);
Fileを開き直す freopen Fileを開き直す(filename, "w", Screen);
Fileのnameを変更 rename Fileのnameを変更(oldfilename, newfilename);
FileをDelete remove FileをDelete(filename);
キーボードFromCharacterを読む getchar 字 c ← キーボードFromCharacterを読む();
ScreenにCharacterをTable示 putchar ScreenにCharacterをTable示(c);
キーボードFromStringを読む gets キーボードFromStringを読む(buf);
ScreenにStringをTable示 puts ScreenにStringをTable示("Hello world");
ScreenにErrorをTable示 perror ScreenにErrorをTable示("Error");
keyboard input scanf keyboard input("%d", &data);
Dynamic array作成 malloc 字 *str ← (字 *)Dynamic array作成(100);
Dynamic array作成して0入れる calloc 字 *array ← (字 *)Dynamic array作成して0入れる(100);
Dynamic arrayのサイズ変更 realloc *array ← realloc(NULL, 100);
Dynamic array解放 free Dynamic array解放(array);
absolute value abs abs(-100);
Stringを実numerics化 atof Real Number f ← Stringを実numerics化("123.45");
random number rand 戻る 1 + (Integer)(rand() * (100 - 1 + 1.0) / (1.0 + RAND_MAX));
End exit End(0);
ErrorEnd abort ErrorEnd();
End処理登録 atexit atexit(funcexit);
環境Variable getenv 字* str ← 環境Variable("PATH");
Search bsearch Integer* result ← Search( &target, array, サイズ(array)/サイズ(array[0]), サイズ(array[0]), funccompare );
ソート qsort ソート( array, サイズ(array)/サイズ(array[0]), サイズ(array[0]), funccompare );
コマンドrun system コマンドrun("DIR");
alphabet判定 isalpha もし(alphabet判定('a'))
大Character判定 isupper もし(大Character判定('A'))
小Character判定 islower もし(小Character判定('a'))
digit判定 isdigit もし(digit判定('6'))
Space判定 isspace もし(Space判定(' '))
alphanumeric characters判定 isalnum もし(alphanumeric characters判定('d'))
controlCharacter判定 iscntrl もし(controlCharacter判定('\t'))
印刷Character判定 isprint もし(印刷Character判定('G'))
delimiter判定 ispunct もし(delimiter判定('['))
hexadecimal判定 isxdigit もし(hexadecimal判定('D'))
Stringcopy strcpy Stringcopy(stra,strb);
指定number of charactersだけStringcopy strncpy 指定number of charactersだけStringcopy(stra,strb,4);
String連結 strcat String連結(str1, str2);
指定number of charactersだけString連結 strncat 指定number of charactersだけString連結(str1, str2, 3);
number of characters strlen Integer len ← number of characters(str);
sameStringか判定 strcmp もし (sameStringか判定(str1, str2) == 0) {}
指定number of charactersまでsameString判定 strncmp もし (指定number of charactersまでsameString判定(str1, str2 , 5 ) == 0) {}
StringFromCharacterSearch strchr 字 *c ← StringFromCharacterSearch(str, 'A');
Stringの後ろFromCharacterSearch strrchr 字 *c ← Stringの後ろFromCharacterSearch(str, 'A');
StringFromStringSearch strstr 字 *str ← StringFromStringSearch(str1, str2);
arraycopy memcpy arraycopy(array1, array2, サイズ(array2));
安全なarraycopy memmove 安全なarraycopy(array1, array2, サイズ(array2));
arrayに連続Assignment memset arrayに連続Assignment(array, 0 , サイズ(array));
arrayFromSearch memchr 字 p ← arrayFromSearch(str, 'h', サイズ(str));
Real Numberabsolute value fabs Real Number f ← Real Numberabsolute value(-123.45);
square root sqrt Real Number value ← sqrt(4);
exponent pow Real Number value ← exponent(2.0, 3.0)
余り fmod Real Number value ← 余り(9,2);
sine sin Real Number value ← sine(1.2);
cosine cos Real Number value ← cosine(90);
tangent tan Real Number value ← tangent(10);
arc cosine acos Real Number value ← arc cosine(1);
arc sine asin Real Number value ← arc sine(1);
arc tangent atan Real Number value ← arc tangent(1);
ハイパボリックsine sinh Real Number value ← ハイパボリックsine(0);
ハイパボリックcosine cosh Real Number value ← ハイパボリックcosine(0);
ハイパボリックtangent tanh Real Number value ← ハイパボリックtangent(0);
Real Numberを切り上げ ceil Real Number value ← Real Numberを切り上げ(123.4);
Real Numberを切り捨て floor Real Number value ← Real Numberを切り捨て(123.4);
自然指数 exp Real Number value ← 自然指数(1);
自然対数 log Real Number value ← 自然対数(4);
常用対数 log10 Real Number value ← 常用対数(100);
1970YearFromのprogressSec数 time 長Integer sec ← 1970YearFromのprogressSec数(NULL);
CPUHours clock 長Integer cputime ← CPUHours();
Timeの引き算 difftime Real Number diff ← difftime(time2,time1);
現地Timeに変換 localtime time_t jptm ← 現地Timeに変換(1970YearFromのprogressSec数(NULL));
国際Timeに変換 gmtime time_t gmtm ← 国際Timeに変換(1970YearFromのprogressSec数(NULL));
TimeをStringに変換 ctime Table示("%s", TimeをStringに変換(1970YearFromのprogressSec数(NULL)));
条件で強制End assert 条件で強制End(value < 1);
<入出力> #プラグイン
<診断> #プラグイン <診断>
#プラグイン
#プラグイン
#プラグイン
#プラグイン
#プラグイン
<数学> #プラグイン <数学>
<可変argument> #プラグイン <可変argument>
<環境依存Value> #プラグイン <環境依存Value>
<便利> #プラグイン <便利>
#プラグイン
#プラグイン
Downloading...
Technology Overview
IMPLEMENTATION
We are implementing Japanese instructions by replacing the source code and then passing it to the compiler.
Please note.
WARNING
Currently, we are not performing precise parsing when replacing source code.
Therefore, it may not always be replaced correctly depending on how it is written.

Currently, we do not support specifying variable names and function names in Japanese.
Terms of Use
TERMS OF USE
Use of this tool is completely free of charge. The developer does not ask for any form of compensation.
You are free to use this tool for any purpose, including commercial use.
The developer assumes no responsibility for any damages resulting from the use of this tool.
licence list
LICENCE
Powered by Emscripten https://emscripten.org/

Powered by Monaco Editor https://microsoft.github.io/monaco-editor/

picoc is published under the "New BSD License".
http://www.opensource.org/licenses/bsd-license.php
Copyright (c) 2009-2011, Zik Saleeba
All rights reserved.
https://gitlab.com/zsaleeba/picoc
@タイトル
@テキスト
Comments, requests, bug reports, etc.
FEEDBACK
Please send your comments, requests, bug reports, etc. to the following address.
https://tally.so/r/n9KBZp
https://x.com/mmgamess
mmmgames@gmail.com
Share
SHARE
If you like the tool, we would be very encouraged if you would share it.
     
Convenient Apple
UTILITY
Loading comment system...