Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

จะพิมพ์ชื่อหลาย ๆ ครั้งโดยไม่มีคำสั่งวนซ้ำโดยใช้ภาษา C ได้อย่างไร?


ปัญหา

ลองพิมพ์ชื่อ 10 ครั้งโดยไม่ใช้คำสั่งวนซ้ำหรือ goto ใด ๆ ในภาษาการเขียนโปรแกรม C

วิธีแก้ปัญหา

โดยทั่วไป คำสั่งวนซ้ำจะใช้เพื่อทำซ้ำบล็อกของโค้ดจนกว่าเงื่อนไขจะเป็นเท็จ

ตัวอย่าง1

ในโปรแกรมนี้ เรากำลังพยายามพิมพ์ชื่อ 10 ครั้งโดยไม่ต้องใช้คำสั่งวนซ้ำหรือ goto

#include <stdio.h>
void printname(char* name,int count){
   printf("%03d : %s\n",count+1,name);
   count+=1;
   if(count<10)
      printname(name,count);
}
int main(){
   char name[50];
   printf("\nEnter you name :");
   scanf("%s",name);
   printname(name,0);
   return 0;
}

ผลลัพธ์

Enter you name :tutorialspoint
001 : tutorialspoint
002 : tutorialspoint
003 : tutorialspoint
004 : tutorialspoint
005 : tutorialspoint
006 : tutorialspoint
007 : tutorialspoint
008 : tutorialspoint
009 : tutorialspoint
010 : tutorialspoint

ตัวอย่างที่ 2

ด้านล่างนี้เป็นโปรแกรมพิมพ์ชื่อของคุณ 10 ครั้งโดยใช้คำสั่งวนซ้ำหรือ goto -

#include <stdio.h>
int main(){
   char name[50],i;
   printf("\nEnter you name :");
   scanf("%s",name);
   for(i=0;i<10;i++){
      printf("%s\n",name);
   }
   return 0;
}

ผลลัพธ์

Enter you name :TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint
TutorialsPoint