- 1 1. ã¯ããã«ïŒCèšèªã®ç¡éã«ãŒããšã¯ïŒ
- 2 2. Cèšèªã«ãããç¡éã«ãŒãã®åºæ¬æ§æ
- 3 3. å®è·µçãªç¡éã«ãŒãã®äœ¿çšäŸ
- 4 4. ç¡éã«ãŒãã®å¶åŸ¡æ¹æ³
- 5 5. 泚æç¹ïŒç¡éã«ãŒãã«ãããã©ãã«ãšå¯Ÿç
- 6 6. å®è·µåé¡ãšè§£èª¬
- 7 7. FAQïŒCèšèªã®ç¡éã«ãŒãã«é¢ãããããã質å
- 8 8. ãŸãšãïŒç¡éã«ãŒãã®å©ç¹ãšå®å šãªäœ¿çšæ³
1. ã¯ããã«ïŒCèšèªã®ç¡éã«ãŒããšã¯ïŒ
Cèšèªã«ãããç¡éã«ãŒãã¯ãç¹å®ã®æ¡ä»¶ãæºãããŸã§ç¹°ãè¿ãåŠçãå®è¡ããããã°ã©ã ã®åºæ¬çãªå¶åŸ¡æ§æã§ããç¡éã«ç¶ãã«ãŒãã¯ãã·ã¹ãã ã®åžžæç£èŠããŠãŒã¶ãŒå ¥ååŸ æ©ãªã©ãæ§ã ãªããã°ã©ã ã®æ©èœãæ¯ããéèŠãªåœ¹å²ãæãããŸãã
ãã®èšäºã§ã¯ãCèšèªã§ç¡éã«ãŒããå®è£ ããåºæ¬æ§æããå¿çšäŸããã©ãã«å¯ŸçãŸã§è©³ãã解説ããŸããåå¿è ããäžçŽè ãŸã§ã察象ãšãããµã³ãã«ã³ãŒãã亀ããªããå ·äœçã«èª¬æããŸãã
2. Cèšèªã«ãããç¡éã«ãŒãã®åºæ¬æ§æ
2.1 whileæã䜿ã£ãç¡éã«ãŒã
while
æã¯ãæ¡ä»¶ãçã§ããéãåŠçãç¹°ãè¿ããŸããç¡éã«ãŒããå®è£
ããæãåºæ¬çãªæ¹æ³ãšããŠãã䜿çšãããŸãã
ã³ãŒãäŸ
#include <stdio.h>
int main() {
while (1) { // 1ã¯åžžã«çãæå³ãã
printf("ãã®ã«ãŒãã¯ç¡éã«ç¹°ãè¿ãããŸã
");
}
return 0;
}
ãã®ã³ãŒãã¯ããã®ã«ãŒãã¯ç¡éã«ç¹°ãè¿ãããŸãããšããã¡ãã»ãŒãžããããã°ã©ã ãçµäºãããŸã§è¡šç€ºãç¶ããŸãã
ãã€ã³ã
- æ¡ä»¶åŒãåžžã«çã§ãããããç¡éã«ãŒãã«ãªããŸãã
- æ¡ä»¶ã«å€æ°ã䜿çšããããšã§ãåçãªçµäºæ¡ä»¶ãèšå®ããããšãã§ããŸãã
2.2 foræã䜿ã£ãç¡éã«ãŒã
for
æãç¡éã«ãŒãã®å®è£
ã«äœ¿çšã§ããŸããåæåãæ¡ä»¶å€å®ãæŽæ°åŠçãçç¥ããããšã§ãç¡éã«ãŒããæ§ç¯ããŸãã
ã³ãŒãäŸ
#include <stdio.h>
int main() {
for (;;) { // æ¡ä»¶åŒãªãã§ç¡éã«ãŒã
printf("ãã®ã«ãŒããç¡éã«ç¹°ãè¿ãããŸã
");
}
return 0;
}
ãã€ã³ã
for (;;)
ã¯ãã·ã³ãã«ã«ç¡éã«ãŒãã衚çŸã§ãããããã³ãŒããçããªããŸããfor
æã¯ç¹°ãè¿ãåæ°ãæ±ºãŸã£ãŠããå Žåã«ããã䜿çšãããŸããããã®ããã«ç¡éã«ãŒããšããŠæŽ»çšããããšãå¯èœã§ãã
2.3 do-whileæã䜿ã£ãç¡éã«ãŒã
do-while
æã§ã¯ãæåã«å¿
ãäžåºŠã¯åŠçãå®è¡ããããã®åŸæ¡ä»¶åŒãè©äŸ¡ãããŸãã
ã³ãŒãäŸ
#include <stdio.h>
int main() {
do {
printf("ãã®ã«ãŒããç¡éã«ç¹°ãè¿ãããŸã
");
} while (1); // æ¡ä»¶ãåžžã«ç
return 0;
}
ãã€ã³ã
- æäœ1åã¯åŠçãå®è¡ããå¿ èŠãããå Žåã«é©ããŠããŸãã
- æ¡ä»¶å€å®ãåŸã«æ¥ãããã
while
æãšã¯åäœã®é åºãç°ãªããŸãã

3. å®è·µçãªç¡éã«ãŒãã®äœ¿çšäŸ
3.1 ãŠãŒã¶ãŒå ¥ååŸ æ©ããã°ã©ã
以äžã¯ããŠãŒã¶ãŒããã®å ¥åãåŸ ã¡ç¶ããããã°ã©ã ã®äŸã§ãã
ã³ãŒãäŸ
#include <stdio.h>
int main() {
char input[100];
while (1) {
printf("å
¥åããŠãã ãã: ");
scanf("%s", input);
if (strcmp(input, "exit") == 0) { // "exit"ãšå
¥åããããçµäº
break;
}
printf("å
¥åãããå
容: %s
", input);
}
return 0;
}
解説
scanf
颿°ã§ãŠãŒã¶ãŒå ¥åãåãåãã”exit”ãšå ¥åããããŸã§ã«ãŒããç¶ç¶ããŸãã- æ¡ä»¶ãæºãããå Žåã¯
break
æã§ã«ãŒããæããŸãã
3.2 ãµãŒããŒç£èŠã·ã¹ãã ã®ã«ãŒãåŠç
以äžã¯ããµãŒããŒã®ç¶æ ãäžå®ééã§ç£èŠããã·ã¹ãã ã®äŸã§ãã
ã³ãŒãäŸ
#include <stdio.h>
#include <unistd.h> // sleep颿°ã®ããã«å¿
èŠ
int main() {
while (1) {
printf("ãµãŒããŒãç£èŠäž...
");
sleep(5); // 5ç§åŸ
æ©
}
return 0;
}
解説
sleep
颿°ã䜿çšããŠã«ãŒãã®ééã調æŽããCPUè² è·ãæããŠããŸãã- ãã®ãããªç¡éã«ãŒãã¯ãã·ã¹ãã 管çãã¢ãã¿ãªã³ã°ããŒã«ã§ãã䜿ãããŸãã
3.3 ã²ãŒã ã«ãŒãã®å®è£ äŸ
ã²ãŒã ã®ã¡ã€ã³ã«ãŒãã§ã¯ããã¬ãŒã ããšã«åŠçãç¹°ãè¿ããŸãã
ã³ãŒãäŸ
#include <stdio.h>
#include <stdbool.h>
int main() {
bool running = true; // ã²ãŒã ã®ç¶æ
ã管ç
int count = 0;
while (running) {
// ã²ãŒã ã®ããžãã¯åŠç
printf("ã²ãŒã å®è¡äž...
");
// ãŠãŒã¶ãŒã®çµäºæç€ºãåãåãïŒäŸ: ããŒããŒãå
¥åïŒ
char command;
printf("çµäºããå Žåã¯'q'ãå
¥å: ");
scanf(" %c", &command);
if (command == 'q') {
running = false;
}
}
printf("ã²ãŒã çµäº
");
return 0;
}
解説
- ãã©ã°å€æ°
running
ã§ã«ãŒãã®ç¶æ ãå¶åŸ¡ããŸãã - æ¡ä»¶ä»ãã§çµäºãããããå®å šã«åæ¢ã§ããä»çµã¿ãçµã¿èŸŒãŸããŠããŸãã
4. ç¡éã«ãŒãã®å¶åŸ¡æ¹æ³
4.1 breakæã§ã«ãŒããçµäºãã
break
æã¯ãã«ãŒãã匷å¶çã«çµäºããããã«äœ¿çšãããŸããç¹å®ã®æ¡ä»¶ãæºããããå Žåã«ã«ãŒãããæãåºããããšãã«åœ¹ç«ã¡ãŸãã
ã³ãŒãäŸ: ãŠãŒã¶ãŒå ¥åã§çµäº
#include <stdio.h>
int main() {
int input;
while (1) {
printf("æ°åãå
¥åããŠãã ãã (0ã§çµäº): ");
scanf("%d", &input);
if (input == 0) { // 0ãå
¥åããããçµäº
break;
}
printf("å
¥åãããæ°å: %d
", input);
}
printf("ããã°ã©ã çµäº
");
return 0;
}
解説
if (input == 0)
ã®æ¡ä»¶ãçã§ããã°ãbreak
æã«ãã£ãŠå³åº§ã«ã«ãŒããçµäºããŸãã- æ¡ä»¶ãåœã®å Žåã¯ã«ãŒããç¶è¡ãããŸãã
4.2 continueæã§åŠçãã¹ããããã
continue
æã¯ãçŸåšã®ã«ãŒãå
ã®æ®ãã®åŠçãã¹ãããããæ¬¡ã®å埩åŠçãžé²ã¿ãŸããç¹å®ã®æ¡ä»¶ãé€å€ãããå Žåã«äŸ¿å©ã§ãã
ã³ãŒãäŸ: å¶æ°ã®ã¿ã衚瀺
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
if (i % 2 != 0) { // 奿°ã®å Žåã¯ã¹ããã
continue;
}
printf("%dã¯å¶æ°ã§ã
", i);
}
return 0;
}
解説
i % 2 != 0
ã®æ¡ä»¶ãçã®å Žåã¯continue
æã«ãã£ãŠã¹ããããããŸãã- å¶æ°ã®ã¿ã衚瀺ããããããç¹å®æ¡ä»¶ã§ã®åŠçã®é€å€ãå¯èœã«ãªããŸãã
4.3 ãã©ã°å€æ°ãå©çšããå¶åŸ¡
ãã©ã°å€æ°ã䜿ãã°ãç¡éã«ãŒãã«æè»ãªçµäºæ¡ä»¶ãèšããããšãã§ããŸãããã®æ¹æ³ã¯ãè€éãªæ¡ä»¶åå²ã䌎ãããã°ã©ã ã«ç¹ã«é©ããŠããŸãã
ã³ãŒãäŸ: ãã©ã°å€æ°ã«ããçµäºæ¡ä»¶ã®ç®¡ç
#include <stdio.h>
#include <stdbool.h> // boolåã䜿çšããããã«å¿
èŠ
int main() {
bool running = true; // ãã©ã°å€æ°
int count = 0;
while (running) {
printf("ã«ãŠã³ã: %d
", count++);
if (count >= 5) { // ã«ãŠã³ãã5以äžã«ãªã£ããçµäº
running = false;
}
}
printf("ã«ãŒãçµäº
");
return 0;
}
解説
- ãã©ã°å€æ°
running
ã§ã«ãŒãã®ç¶ç¶/çµäºã管çããŸãã - ãã©ã°ã®å€ã倿Žããããšã§ãæè»ã«æ¡ä»¶ãå¶åŸ¡ã§ããŸãã
4.4 æ¡ä»¶ä»ãã«ãŒãã®èšèšäŸ
å®éã®ã·ããªãªã§ã¯ãè€æ°ã®æ¡ä»¶ãçµã¿åãããŠã«ãŒããå¶åŸ¡ããå¿ èŠããããŸãã
ã³ãŒãäŸ: æéå¶éä»ãã«ãŒã
#include <stdio.h>
#include <time.h> // æé颿°ã䜿çšããããã«å¿
èŠ
int main() {
time_t start = time(NULL); // éå§æéãèšé²
int count = 0;
while (1) { // ç¡éã«ãŒã
printf("ã«ãŠã³ã: %d
", count++);
if (difftime(time(NULL), start) > 10) { // 10ç§çµéã§çµäº
break;
}
}
printf("10ç§çµéããŸãããçµäºããŸãã
");
return 0;
}
解説
time()
颿°ã§éå§æéãååŸããdifftime()
颿°ã§çµéæéãèšæž¬ããŸãã- æ¡ä»¶ä»ãã§ã«ãŒããæããããšã§ãæéå¶éãæã€ããã°ã©ã ãå®è£ ã§ããŸãã

5. 泚æç¹ïŒç¡éã«ãŒãã«ãããã©ãã«ãšå¯Ÿç
5.1 CPUè² è·ã®å¢å€§ã«ãã圱é¿
ç¡éã«ãŒããé«éã§ç¹°ãè¿ããããšãCPUã®äœ¿çšçã100%ã«éããã·ã¹ãã å šäœã®ããã©ãŒãã³ã¹ãäœäžããå¯èœæ§ããããŸããç¹ã«ãªãœãŒã¹ãéãããçµã¿èŸŒã¿ã·ã¹ãã ã§ã¯æ·±å»ãªåé¡ãšãªããŸãã
åé¡äŸ
while (1) {
// ç¡é§ãªåŠçãç¹°ãè¿ã
}
ãã®ã³ãŒãã¯äœãåŠçãè¡ããã«ã«ãŒããç¶ãããããCPUãªãœãŒã¹ãéå°ã«æ¶è²»ããŸãã
察ç: ã¹ãªãŒã颿°ãå©çšãã
CPUã®è² è·ã軜æžããããã«ã¯ãã«ãŒãå
ã§é©åã«åŸ
æ©æéãèšããããšãéèŠã§ãã
ä¿®æ£çã³ãŒãäŸ
#include <stdio.h>
#include <unistd.h> // sleep颿°ã䜿çšããããã«å¿
èŠ
int main() {
while (1) {
printf("ç£èŠäž...
");
sleep(1); // 1ç§åŸ
æ©
}
return 0;
}
ãã€ã³ã
sleep()
颿°ã䜿çšããããšã§ã«ãŒãã®ééã調æŽããCPUè² è·ãæå°éã«æããããšãã§ããŸãã- çµã¿èŸŒã¿ã·ã¹ãã ã§ã¯ãããªç§åäœã§å¶åŸ¡ã§ãã
usleep()
ãã¿ã€ããŒåŠçãå©çšãããšããã«å¹ççã§ãã
5.2 ããã°ã©ã ã®ããªãŒãºãå¿ç忢
ç¡éã«ãŒããé©åã«çµäºãããªãå Žåãããã°ã©ã ã忢ããŠãŒã¶ãŒå ¥åãå€éšæäœãåãä»ããªããªãããšããããŸãã
åé¡äŸ
while (1) {
// çµäºæ¡ä»¶ãªã
}
ãã®ã³ãŒãã¯çµäºæ¡ä»¶ãååšããªããããããã°ã©ã ãæåã§åŒ·å¶çµäºããªãéã忢ã§ããŸããã
察ç: çµäºæ¡ä»¶ãçµã¿èŸŒã
ä¿®æ£çã³ãŒãäŸ
#include <stdio.h>
int main() {
int count = 0;
while (count < 5) {
printf("ã«ãŠã³ã: %d
", count);
count++; // ã«ãŠã³ããå¢ãã
}
return 0;
}
å®è¡çµæ
ã«ãŠã³ã: 0
ã«ãŠã³ã: 1
ã«ãŠã³ã: 2
ã«ãŠã³ã: 3
ã«ãŠã³ã: 4
ãã€ã³ã
- ã«ãŒã倿°ã®æŽæ°ãå¿ããã«å®è£ ããããšãéèŠã§ãã
- ãã©ã°å€æ°ãã«ãŠã³ã¿ã䜿ã£ãæ¡ä»¶ç®¡çã¯ãããã°æã«ã圹ç«ã¡ãŸãã
5.3 ãããã°ã®é£ãã
ç¡éã«ãŒãã®ãã©ãã«ã¯ãç¹ã«å€§èŠæš¡ããã°ã©ã ã§ã¯åå ç¹å®ãé£ããå ŽåããããŸããæå³ããªãæ¡ä»¶åå²ãå€éšå ¥åãåé¡ãåŒãèµ·ããããšãå€ãããããã°æã«ã¯ã«ãŒãå ã®ç¶æ³ãæ£ç¢ºã«ææ¡ããå¿ èŠããããŸãã
åé¡äŸ
int count = 0;
while (count != 10) { // æ¡ä»¶ãã¹ã§ç¡éã«ãŒã
printf("ã«ãŠã³ã: %d
", count);
}
ãã®ã³ãŒãã¯ãcount
ãå€åããªãããã«ç¡éã«ãŒãã«é¥ããŸãã
察ç: ãããã°çšã®ãã°åºåã远å ãã
ä¿®æ£çã³ãŒãäŸ
#include <stdio.h>
int main() {
int count = 0;
while (count != 10) { // æ¡ä»¶ãã¹ã鲿¢
printf("ãããã°: ã«ãŠã³ã=%d
", count); // ç¶æ
確èª
count++; // ã«ãŠã³ããå¢ãã
}
printf("çµäº
");
return 0;
}
ãã€ã³ã
- ãã°åºåã远å ããããšã§ãã«ãŒãã®å®è¡ç¶æ³ãææ¡ã§ããŸãã
- å®éã®éçšæã¯ãããã°çšã®åºåãã³ã¡ã³ãã¢ãŠããŸãã¯åé€ããããã«ããŸãã
5.4 è€æ°æ¡ä»¶ãçšããå®å šèšèš
è€éãªæ¡ä»¶ãçµã¿åãããå Žåã¯ãè€æ°ã®æ¡ä»¶åŒãçšããå®å šèšèšãå¿ èŠã§ãã
åé¡äŸ
while (1) {
// äœãèæ
®ããã«åäœ
}
察ç: çµã¿åããæ¡ä»¶ãèšèšãã
ä¿®æ£çã³ãŒãäŸ
#include <stdio.h>
#include <stdbool.h>
#include <time.h>
int main() {
bool running = true;
time_t start = time(NULL);
while (running) {
printf("ç£èŠäž...
");
// æéæ¡ä»¶ã«ããçµäºå€å®
if (difftime(time(NULL), start) > 10) { // 10ç§çµéã§çµäº
running = false;
}
}
printf("ç£èŠçµäº
");
return 0;
}
ãã€ã³ã
- æ¡ä»¶ãè€æ°èšå®ããçµäºã®æ¡ä»¶ãäŸå€åŠçãæè»ã«è¿œå ã§ããŸãã
- æéãã«ãŠã³ã¿ã䜿ãããšã§ãå®å šã§å¶åŸ¡ããããã«ãŒããå®çŸã§ããŸãã

6. å®è·µåé¡ãšè§£èª¬
6.1 ã³ãŒãã¯ã€ãº: å®è¡çµæãäºæž¬ãã
åé¡ 1: ã«ãŒãã®åäœç¢ºèª
以äžã®ã³ãŒãã¯ã©ã®ããã«åäœããã§ããããïŒå®è¡çµæãäºæž¬ããŠãã ããã
ã³ãŒãäŸ
#include <stdio.h>
int main() {
int i = 0;
for (;;) { // ç¡éã«ãŒã
printf("%d
", i++);
if (i > 5) { // æ¡ä»¶ãæºããããã«ãŒãçµäº
break;
}
}
return 0;
}
ãã³ã
for (;;) {}
ã¯ç¡éã«ãŒããäœãåºæ¬æ§æã§ããi++
ã¯å€æ°i
ã®å€ã1ãã€å¢ãããŸããif (i > 5)
ã®æ¡ä»¶ãæç«ãããšãã«break
æã§ã«ãŒããçµäºããŸãã
è§£çãšè§£èª¬
ãã®ã³ãŒãã¯ã0ãã5ãŸã§ã®æ°åãé çªã«åºåãã6ãåºåããåã«ã«ãŒããçµäºããŸãã
å®è¡çµæ
0
1
2
3
4
5
ãã€ã³ã
- ç¡éã«ãŒãã®çµäºæ¡ä»¶ã
break
æã§æå®ããåºæ¬çãªäŸã§ãã - ã«ãŒããçµäºããåŸã¯éåžžã®ããã°ã©ã åŠçã«æ»ããŸãã
6.2 ã³ãŒãä¿®æ£åé¡: ãã°ã®ä¿®æ£
åé¡ 2: æ¡ä»¶èšå®ãã¹ã®ä¿®æ£
以äžã®ã³ãŒãã«ã¯åé¡ããããŸãããã®ã³ãŒããå®è¡ãããšç¡éã«ãŒãããæããããŸãããã©ãã«åé¡ããããã©ãä¿®æ£ãã¹ãã§ããããïŒ
ã³ãŒãäŸ
#include <stdio.h>
int main() {
int count = 0;
while (count < 5) { // æ¡ä»¶ä»ãã«ãŒã
printf("ã«ãŠã³ã: %d
", count);
}
return 0;
}
ãã³ã
count
ã®å€ã¯å€åããŠããŸããã- ã«ãŒãå
ã§
count
ãå¢ããåŠçãå¿ èŠã§ãã
è§£çãšè§£èª¬
ãã®ã³ãŒãã®åé¡ç¹ã¯ãcount
ã®å€ãã«ãŒãå
ã§æŽæ°ãããªããããæ¡ä»¶count < 5
ãæ°žé ã«çã«ãªããç¡éã«ãŒãã«é¥ãç¹ã§ãã
ä¿®æ£çã³ãŒã
#include <stdio.h>
int main() {
int count = 0;
while (count < 5) {
printf("ã«ãŠã³ã: %d
", count);
count++; // ã«ãŠã³ããå¢å ããã
}
return 0;
}
å®è¡çµæ
ã«ãŠã³ã: 0
ã«ãŠã³ã: 1
ã«ãŠã³ã: 2
ã«ãŠã³ã: 3
ã«ãŠã³ã: 4
ãã€ã³ã
- ã«ãŒã倿°ã®æŽæ°ãå¿ããã«å®è£ ããããšãéèŠã§ãã
- ãã©ã°å€æ°ãã«ãŠã³ã¿ã䜿ã£ãæ¡ä»¶ç®¡çã¯ãããã°æã«ã圹ç«ã¡ãŸãã
6.3 å¿çšåé¡: æéå¶éä»ãã«ãŒã
åé¡ 3: äžå®æéå ã«çµäºããããã°ã©ã ãäœæãã
次ã®ã³ãŒãã¯ã10ç§éã ãã«ãŒããå®è¡ããããã°ã©ã ã§ããã³ãŒãã®åäœã説æãããã®åŸã®å¿çšäŸãèããŠã¿ãŠãã ããã
ã³ãŒãäŸ
#include <stdio.h>
#include <time.h>
int main() {
time_t start = time(NULL); // éå§æé
while (1) { // ç¡éã«ãŒã
printf("åäœäž...
");
// æéå¶éã§çµäº
if (difftime(time(NULL), start) > 10) {
break;
}
}
printf("10ç§çµéãçµäºããŸãã
");
return 0;
}
è§£çãšè§£èª¬
ãã®ã³ãŒãã¯ãtime()
颿°ã䜿ã£ãŠçŸåšæå»ãååŸããéå§æéããã®çµéç§æ°ãèšç®ããŸãã
ãã€ã³ã
difftime()
颿°ãå©çšããŠçµéæéãèšç®ããããšã§ãæéå¶éãèšããŠããŸãã- å¿çšäŸãšããŠããµãŒããŒç£èŠãèªååŠçã®å®è£ ã«åœ¹ç«ã¡ãŸãã
å¿çšäŸ
- äžå®æéããšã«ã»ã³ãµãŒããããŒã¿ãååŸããããã°ã©ã ã
- ãµãŒããŒãå¿çããªãå Žåã«å詊è¡ããããã°ã©ã ã
6.4 ãšã©ãŒãã³ããªã³ã°åé¡: äžæ£å ¥å察ç
åé¡ 4: äžæ£ãªå ¥åãæ€åºããŠã«ãŒããæãã
以äžã®ã³ãŒããæ¹åããäžæ£ãªå ¥åããã£ãå Žåã«ãšã©ãŒã¡ãã»ãŒãžã衚瀺ããŠã«ãŒããçµäºããããã«ä¿®æ£ããŠãã ããã
ã³ãŒãäŸ
#include <stdio.h>
int main() {
int number;
while (1) {
printf("æ°åãå
¥åããŠãã ãã: ");
if (scanf("%d", &number) != 1) { // æ°å以å€ãå
¥åãããå Žå
break;
}
printf("å
¥åãããæ°å: %d
", number);
}
printf("ãšã©ãŒãçºçããŸãããçµäºããŸãã
");
return 0;
}
解説
scanf()
颿°ã®æ»ãå€ããã§ãã¯ããããšã§ãäžæ£ãªå ¥åãæ€åºããŸãã- å®å šãªããã°ã©ã ã§ã¯ãšã©ãŒãã³ããªã³ã°ãçµã¿èŸŒãããšãéèŠã§ãã

7. FAQïŒCèšèªã®ç¡éã«ãŒãã«é¢ãããããã質å
7.1 ç¡éã«ãŒãã®åºæ¬ã«é¢ãã質å
Q1. ç¡éã«ãŒãã¯ã©ããªå Žé¢ã§äœ¿ãã¹ãã§ããïŒ
A. ç¡éã«ãŒãã¯ã次ã®ãããªå Žé¢ã§äœ¿çšãããŸãã
- ãµãŒããŒç£èŠããã°ã©ã : ã·ã¹ãã ã®ç¶æ ãåžžæç£èŠããç°åžžãæ€åºããã察åŠããã
- ãŠãŒã¶ãŒå ¥ååŸ æ©: ããŒããŒããã»ã³ãµãŒããã®å ¥åãåŸ ã¡ç¶ããããã°ã©ã ã
- ãªã¢ã«ã¿ã€ã åŠç: ã²ãŒã ãã¢ãã¡ãŒã·ã§ã³ã®ãã¬ãŒã æŽæ°ãªã©ç¶ç¶çãªåŠçãå¿ èŠãªå Žé¢ã
Q2. ç¡éã«ãŒãã䜿ããšããã°ã©ã ãå¿çããªããªãã®ã¯ãªãã§ããïŒ
A. çµäºæ¡ä»¶ãèšå®ããŠããªãå Žåãã«ãŒãã¯æ°žé ã«å®è¡ããç¶ãããããããã°ã©ã ã¯å¿çããªããªããŸãã
ãããåé¿ããããã«ã¯ã以äžã®ããã«çµäºæ¡ä»¶ã远å ããå¿
èŠããããŸãã
äŸ: çµäºæ¡ä»¶ä»ãã«ãŒã
#include <stdio.h>
int main() {
int count = 0;
while (1) {
printf("ã«ãŠã³ã: %d
", count++);
if (count > 10) { // æ¡ä»¶ãæºããããçµäº
break;
}
}
return 0;
}
ãã®ããã«ãbreak
æããã©ã°å€æ°ã䜿ã£ãŠå®å
šã«ã«ãŒããçµäºã§ããããã«ããŸãããã
Q3. ç¡éã«ãŒãã¯ã©ã®ãããCPUã«è² è·ããããŸããïŒ
A. ç¡éã«ãŒãã¯æ¡ä»¶ãªãã§é«éã«ç¹°ãè¿ããããããCPU䜿çšçã100%ã«éããå¯èœæ§ããããŸãã
察ç
- åŸ æ©æéãæ¿å ¥ãã
#include <unistd.h> // sleep颿°ã䜿çšããå Žå
while (1) {
printf("ç£èŠäž...
");
sleep(1); // 1ç§åŸ
æ©
}
ãã®ããã«sleep()
颿°ã§åŠçã®ééã調æŽããã°ãCPUè² è·ãæããããšãã§ããŸãã
- ã€ãã³ãããŒã¹èšèš
ããŒãªã³ã°ã§ã¯ãªããå€éšã€ãã³ããããªã¬ãŒã«ããåŠçãå°å ¥ããããšã§å¹çåã§ããŸãã
7.2 ãããã°ããšã©ãŒåŠçã«é¢ãã質å
Q4. ç¡éã«ãŒãããããã°ããéã®ãã€ã³ãã¯äœã§ããïŒ
A. ç¡éã«ãŒãã®ãããã°ã§ã¯ã次ã®ãã€ã³ããæŒããããšå¹æçã§ãã
- ãããã°ãã°ã®æŽ»çš
ã«ãŒãå ã§å€æ°ã®å€ãå®è¡ç¶æ³ããã°åºåããŸãã
printf("ãããã°: 倿°x=%d
", x);
- ãã¬ãŒã¯ãã€ã³ãã®èšå®
ãããã¬ã䜿çšããŠã«ãŒãå ã«ãã¬ãŒã¯ãã€ã³ããèšå®ããéäžã®ç¶æ ã確èªããŸãã - ã«ãŠã³ã¿ã«ããå¶éå®éš
ã«ãŒãåæ°ãå¶éããŠå®è¡ããåäœã芳å¯ããŸãã
if (counter > 100) break;
Q5. ããã°ã©ã ãç¡éã«ãŒãããæããããªããšãã¯ã©ãããã°ããã§ããïŒ
A. ããã°ã©ã ãæåã§çµäºããã«ã¯ã以äžã®æäœã詊ããŠãã ããã
- ã³ãã³ãã©ã€ã³/ã¿ãŒããã«ã®å Žå
- Ctrl + C ãæŒããŠããã°ã©ã ã匷å¶çµäºããŸãã
- IDEããšãã£ã¿ã®å Žå
- å®è¡äžã®ããã»ã¹ã忢ãã¿ã³ã§çµäºããŸãã
- ã¿ã¹ã¯ãããŒãžã£ãå©çšãã
- ã¿ã¹ã¯ãããŒãžã£ãéãã該åœããã°ã©ã ãçµäºãããŸãã
äºé²ç
ããã°ã©ã å®è£
æã«ãçµäºæ¡ä»¶ãã¿ã€ã ã¢ãŠãæ©èœãå¿
ã远å ããããã«ããŸãããã
7.3 ç¡éã«ãŒãã®å¿çšã«é¢ãã質å
Q6. ç¡éã«ãŒãã䜿ã£ãããã°ã©ã ãå¹ççã«èšèšããã³ãã¯ïŒ
A. å¹ççãªèšèšãããããã«ã¯ã次ã®ç¹ãæèããŸãããã
- ã€ãã³ãé§ååã®èšèš
ããŒãªã³ã°ã§ã¯ãªããã€ãã³ãçºçæã«åŠçãå®è¡ããã¢ãã«ãæ€èšããŸããäŸ: ãã¿ã³æŒäžããããã¯ãŒã¯åä¿¡ã€ãã³ããªã©ã - ã¿ã€ããŒæ©èœã®æŽ»çš
äžå®ééã§åŠçãå®è¡ããããã«ãã¿ã€ããŒãsleep()
颿°ãå©çšããŸãã - ãªãœãŒã¹ç®¡çã培åºãã
ã¡ã¢ãªããã¡ã€ã«ãã³ãã«ãé©åã«è§£æŸãããããã«èšèšãããªãŒã¯ãé²ããŸãã
Q7. ç¡éã«ãŒãã®çµäºæ¡ä»¶ãæè»ã«å€æŽãããå Žåã¯ã©ãããã°ããã§ããïŒ
A. ãã©ã°å€æ°ã䜿çšããããšã§ãçµäºæ¡ä»¶ãæè»ã«å¶åŸ¡ã§ããŸãã
äŸ: ãã©ã°ã䜿ã£ãçµäºæ¡ä»¶
#include <stdio.h>
#include <stdbool.h>
int main() {
bool running = true; // ãã©ã°å€æ°
int count = 0;
while (running) {
printf("ã«ãŠã³ã: %d
", count++);
if (count > 10) {
running = false; // ãã©ã°ã倿ŽããŠã«ãŒãçµäº
}
}
printf("çµäº
");
return 0;
}
ãã®ããã«ãããã°ã©ã ã®å®è¡ç¶æ ã管çãã倿°ãå°å ¥ããããšã§ãåçãªæ¡ä»¶å¶åŸ¡ãå¯èœã«ãªããŸãã

8. ãŸãšãïŒç¡éã«ãŒãã®å©ç¹ãšå®å šãªäœ¿çšæ³
8.1 ç¡éã«ãŒãã®å©ç¹
ç¡éã«ãŒãã¯ã以äžã®ãããªå Žé¢ã§ãã®å©äŸ¿æ§ãçºæ®ããŸãã
- ç¶ç¶çãªç£èŠãšåŠç
- ãµãŒããŒãã·ã¹ãã ã®ç£èŠããŒã«ã¯ãç¡éã«ãŒããå©çšããŠç¶æ ã宿çã«ç¢ºèªããŸãã
- ãªã¢ã«ã¿ã€ã ã¢ããªã±ãŒã·ã§ã³
- ã²ãŒã ããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ã§ã¯ãåžžæçšŒåããã«ãŒããçšããŠã€ãã³ããåŠçããŸãã
- ãŠãŒã¶ãŒå ¥åã®åŸ æ©åŠç
- å ¥åãåŸ æ©ãç¶ããã·ã¹ãã ã§ã¯ãç¡éã«ãŒãã䜿ãããšã§åçãªåå¿ãå¯èœã«ããŸãã
- ãšã©ãŒãã³ããªã³ã°ãšãªãã©ã€åŠç
- ããŒã¿ååŸããããã¯ãŒã¯æ¥ç¶ã倱æããå Žåã«å詊è¡ããããã°ã©ã ã«æé©ã§ãã
8.2 ç¡éã«ãŒãã®ãªã¹ã¯ãšåé¿ç
äžæ¹ã§ãç¡éã«ãŒãã«ã¯ä»¥äžã®ãããªãªã¹ã¯ã䌎ããŸãã
1. CPU䜿çšçã®éå°ãªå¢å
- åå : ã«ãŒãå ã§åŸ æ©æéãèšå®ããã«åŠçãç¹°ãè¿ããšãCPUè² è·ãå¢å€§ããŸãã
- 察ç:
sleep()
颿°ãã¿ã€ããŒãå©çšããŠåŠçééã調æŽããã
äŸ: CPUè² è·ãæããã³ãŒã
#include <stdio.h>
#include <unistd.h> // sleep颿°ã䜿çšããå Žå
while (1) {
printf("ç£èŠäž...
");
sleep(1); // 1ç§åŸ
æ©
}
2. ããã°ã©ã ã®ããªãŒãºãå¿ç忢
- åå : çµäºæ¡ä»¶ãèšå®ãããŠããªãã«ãŒãã¯åæ¢ã§ããªããªããŸãã
- 察ç: ãã©ã°å€æ°ã
break
æã䜿ã£ãŠå®å šãªçµäºæ¡ä»¶ãèšããã
äŸ: çµäºæ¡ä»¶ä»ãã«ãŒã
#include <stdio.h>
int count = 0;
while (count < 5) {
printf("ã«ãŠã³ã: %d
", count);
count++; // ã«ãŠã³ããå¢å ããã
}
return 0;
3. ãããã°ã®é£ãã
- åå : æå³ããªãç¡éã«ãŒããçºçãããšãåŠçãæ¢ãŸããåå ã®ç¹å®ãé£ãããªããŸãã
- 察ç: ã«ãŒãå ã«ãããã°çšã®ãã°åºåã远å ããåŠçç¶æ³ã確èªããã
äŸ: ãããã°çšãã°åºå
#include <stdio.h>
int main() {
int count = 0;
while (1) {
printf("ãããã°: count=%d
", count++);
if (count > 10) break; // äžå®æ¡ä»¶ã§çµäº
}
return 0;
}
8.3 广çãªèšèšã®ãã€ã³ã
ç¡éã«ãŒããå¹ççã«æŽ»çšããããã®èšèšãã€ã³ãããŸãšããŸãã
- çµäºæ¡ä»¶ã®æç¢ºå
- ãã©ã°å€æ°ãæéå¶éãèšããããšã§ãå®å šã«çµäºã§ããä»çµã¿ãåãå ¥ããŸãããã
- åŸ æ©æéã®æŽ»çš
sleep()
ãã¿ã€ããŒæ©èœã䜿ã£ãŠCPUè² è·ãæããå¹ççã«ãªãœãŒã¹ã管çããŸãã
- ãšã©ãŒãã³ããªã³ã°ã®å®è£
- äžæ£ãªå ¥åãäºæããªããšã©ãŒãçºçããå Žåã§ããå®å šã«çµäºããã³ãŒããçµã¿èŸŒã¿ãŸãããã
- ãããã°æ©èœã®çµã¿èŸŒã¿
- ãã°åºåããã¬ãŒã¯ãã€ã³ããæŽ»çšããã³ãŒãã®åäœãç°¡åã«ç¢ºèªã§ããããã«ããŸãã
8.4 åŠç¿å å®¹ã®æ¯ãè¿ã
ãããŸã§ã®ã»ã¯ã·ã§ã³ã§åŠãã å 容ã以äžã«æ¯ãè¿ããŸãã
- åºæ¬æ§æã®çè§£
while
ãfor
ãdo-while
æã䜿ã£ãç¡éã«ãŒãã®åºæ¬åœ¢ãšãã®åäœã確èªããŸããã
- å®è·µäŸã®æŽ»çš
- ãŠãŒã¶ãŒå ¥ååŸ æ©ããµãŒããŒç£èŠãã²ãŒã ã«ãŒããªã©ã®å ·äœäŸãéããŠãå¿ç𿹿³ãåŠã³ãŸããã
- å¶åŸ¡æ¹æ³ã®å¿çš
break
æãcontinue
æããã©ã°å€æ°ã掻çšããŠãå®å šã«ã«ãŒããå¶åŸ¡ããæè¡ãç¿åŸããŸããã
- 泚æç¹ãšãã©ãã«å¯Ÿç
- CPUè² è·ãããªãŒãºåé¡ãåé¿ããããã®ãã¯ããã¯ãããããã°ææ³ã解説ããŸããã
- å®è·µåé¡ã§ã®åŒ·å
- ã³ãŒãã¯ã€ãºããã°ä¿®æ£åé¡ãéããŠãç¡éã«ãŒãã®çè§£ãæ·±ããŸããã
8.5 æåŸã«
ç¡éã«ãŒãã¯ãCèšèªããã°ã©ã ã«ãããŠéåžžã«éèŠãªåœ¹å²ãæãããŸããåºæ¬æ§æãå¶åŸ¡æ¹æ³ãçè§£ããå¿çšäŸããã©ãã«å¯Ÿçã身ã«ã€ããããšã§ãå®å šãã€å¹ççãªã³ãŒããäœæã§ããããã«ãªããŸãã
ä»åŸã¯ããã®èšäºã§åŠãã å 容ãå¿çšããªãããèªåèªèº«ã§ç¡éã«ãŒããèšèšã»å®è£ ããŠã¿ãŸãããã
次ã®ã¹ããããšããŠããããã®åŠç¿ãããã¯
- æ¡ä»¶åå²ãšé¢æ°ã®äœ¿ãæ¹: ããè€éãªããžãã¯ãæ§ç¯ããããã®æè¡ã
- Cèšèªã®ããŒã¿æ§é ãšã¢ã«ãŽãªãºã : å¹ççãªããã°ã©ã èšèšãžã®ã¹ãããã¢ããã
- ãããã°ããŒã«ã®æŽ»çšæ³: ã³ãŒãå質ãé«ããããã®æè¡åäžã
åŒãç¶ããCèšèªã®åŠç¿ãæ·±ããããšã§ãããé«åºŠãªããã°ã©ã éçºã«ææŠããŠã¿ãŠãã ããïŒ
ã質åã远å 解説ãå¿ èŠãªå Žåã¯ããã²ã³ã¡ã³ãæ¬ã§ãé£çµ¡ãã ããïŒ