Friday, April 6, 2012

10 Good Star(*) Pattern C Programs !



  1.          *
          *  *
       *  *  *
    *  *  *  *
    Program:
    /* This is a simple mirror-image of a right angle triangle */
    
    #include
    int main() {
     char prnt = '*';
     int i, j, nos = 4, s;
     for (i = 1; i <= 5; i++) { for (s = nos; s >= 1; s--) {  // Spacing factor
       printf("  ");
      }
      for (j = 1; j <= i; j++) {
       printf("%2c", prnt);
      }
      printf("\n");
      --nos;   // Controls the spacing factor
     }
     return 0;
    }


  2. *                   *
    * * *           * * *
    * * * * *   * * * * *
    * * * * * * * * * * *
  3. Program:
    #include
    int main() {
     char prnt = '*';
     int i, j, k, s, c = 1, nos = 9;
     for (i = 1; c <= 4; i++) {
         // As we want to print the columns in odd sequence viz. 1,3,5,.etc
      if ((i % 2) != 0) {
       for (j = 1; j <= i; j++) {  printf("%2c", prnt); } for (s = nos; s >= 1; s--) { //The spacing factor
        if (c == 4 && s == 1) {
         break;
        }
        printf("  ");
       }
       for (k = 1; k <= i; k++) {
        if (c == 4 && k == 5) {
         break;
        }
        printf("%2c", prnt);
       }
       printf("\n");
       nos = nos - 4;  // controls the spacing factor
       ++c;
      }
     }
     return 0;
    }


  4. *                         *
       *                   *
    *     *             *     *
       *     *       *     *
    *     *      *      *     *
       *     *       *     *
    *     *             *     *
       *                   *
    *                         *
  5. Program:
    #include
    int main() {
     char prnt = '*';
     int i, j, k, s, p, r, nos = 7;
    
     for (i = 1; i <= 5; i++) {
      for (j = 1; j <= i; j++) {  if ((i % 2) != 0 && (j % 2) != 0) { printf("%3c", prnt); } else if ((i % 2) == 0 && (j % 2) == 0) { printf("%3c", prnt); } else { printf("   "); } } for (s = nos; s >= 1; s--) {  // for the spacing factor
       printf("   ");
      }
      for (k = 1; k <= i; k++) { //Joining seperate figures if (i == 5 && k == 1) {  continue; } if ((k % 2) != 0) { printf("%3c", prnt); } else { printf("   "); } } printf("\n"); nos = nos - 2;   // space control }  nos = 1;  // remaining half.. for (p = 4; p >= 1; p--) {
      for (r = 1; r <= p; r++) { if ((p % 2) != 0 && (r % 2) != 0) { printf("%3c", prnt); } else if ((p % 2) == 0 && (r % 2) == 0) { printf("%3c", prnt); } else { printf("   "); } } for (s = nos; s >= 1; s--) {
       printf("   ");
      }
      for (k = 1; k <= p; k++) {
       if ((k % 2) != 0) {
        printf("%3c", prnt);
       }
    else {
        printf("   ");
       }
      }
      nos = nos + 2;  // space control
      printf("\n");
     }
     return 0;
    }


  6. *   *   *   *   *
      *   *   *   *
        *   *   *
          *   *
            *
          *   *
        *   *   *
      *   *   *   *
    *   *   *   *   *
  7. Program:
    #include
    int main() {
     char prnt = '*';
     int i, j, s, nos = 0;
     for (i = 9; i >= 1; (i = i - 2)) {
      for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (j = 1; j <= i; j++) {
       if ((i % 2) != 0 && (j % 2) != 0) {
        printf("%2c", prnt);
       } else {
        printf("  ");
       }
      }
      printf("\n");
      nos++;
     }
     nos = 3;
     for (i = 3; i <= 9; (i = i + 2)) { for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (j = 1; j <= i; j++) {
    
       if ((i % 2) != 0 && (j % 2) != 0) {
        printf("%2c", prnt);
       } else {
        printf("  ");
       }
      }
      nos--;
      printf("\n");
     }
     return 0;
    }

  8.           *
            * * *
          * * * * *
        * * * * * * *
      * * * * * * * * *
        * * * * * * *
          * * * * *
            * * *
              *
            * * *
          * * * * *
  9. Program:
    #include
    int main() {
     char prnt = '*';
     int i, j, k, s, nos = 4;
     for (i = 1; i <= 5; i++) { for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (j = 1; j <= i; j++) {
       printf("%2c", prnt);
      }
      for (k = 1; k <= (i - 1); k++) { if (i == 1) {     continue; } printf("%2c", prnt); }  printf("\n");   nos--; }  nos = 1; for (i = 4; i >= 1; i--) {
      for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (j = 1; j <= i; j++) {
       printf("%2c", prnt);
      }
      for (k = 1; k <= (i - 1); k++) {
       printf("%2c", prnt);
      }
      nos++;
      printf("\n");
     }
     nos = 3;
     for (i = 2; i <= 5; i++) { if ((i % 2) != 0) { for (s = nos; s >= 1; s--) {
        printf("  ");
       }
       for (j = 1; j <= i; j++) {
        printf("%2c", prnt);
       }
      }
      if ((i % 2) != 0) {
       printf("\n");
       nos--;
      }
     }
     return 0;
    }


  10.      *
           * *
             * * *
               * * * *
             * * *
           * *
         *
  11. Program:
    /*
        This can be seen as two right angle triangles sharing the same base
        which is modified by adding few extra shifting spaces
    */
    #include
    // This function controls the inner loop and the spacing
    // factor guided by the outer loop index and the spacing index.
    int triangle(int nos, int i) {
     char prnt = '*';
     int s, j;
     for (s = nos; s >= 1; s--) {    // Spacing factor
      printf("  ");
     }
     for (j = 1; j <= i; j++) {      //The inner loop
      printf("%2c", prnt);
     }
     return 0;
    }
    
    int main() {
     int i, nos = 5;
     //draws the upper triangle
     for (i = 1; i <= 4; i++) {  triangle(nos, i);    //Inner loop construction  nos++;              // Increments the spacing factor  printf("\n");  } nos = 7;  //Draws the lower triangle skipping its base. for (i = 3; i >= 1; i--) {
      int j = 1;
      triangle(nos, i);  // Inner loop construction
      nos = nos - j;     // Spacing factor
      printf("\n");
     }
     return 0;
    }


  12. * * * * * * * * *
    * * * *   * * * *
    * * *       * * *
    * *           * *
    *               *
    * *           * *
    * * *       * * *
    * * * *   * * * *
    * * * * * * * * *
  13. Program:
    #include
    
    int main() {
     char prnt = '*';
     int i, j, k, s, nos = -1;
     for (i = 5; i >= 1; i--) {
      for (j = 1; j <= i; j++) {  printf("%2c", prnt); } for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (k = 1; k <= i; k++) {
       if (i == 5 && k == 5) {
        continue;
       }
       printf("%2c", prnt);
      }
      nos = nos + 2;
      printf("\n");
     }
     nos = 5;
     for (i = 2; i <= 5; i++) {
      for (j = 1; j <= i; j++) {  printf("%2c", prnt); } for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (k = 1; k <= i; k++) {
       if (i == 5 && k == 5) {
        break;
       }
       printf("%2c", prnt);
      }
      nos = nos - 2;
      printf("\n");
     }
     return 0;
    }


  14. * * * * * * * * * * * * * * * * *
      * * * * * * *   * * * * * * *
        * * * * *       * * * * *
          * * *           * * *
            * * * * * * * * *
              * * * * * * *
                * * * * *
                  * * *
                    *
  15. Program:
    #include
    int main() {
     char prnt = '*';
     int i, j, k, s, sp, nos = 0, nosp = -1;
     for (i = 9; i >= 3; (i = i - 2)) {
      for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (j = 1; j <= i; j++) { printf("%2c", prnt); } for (sp = nosp; sp >= 1; sp--) {
       printf("  ");
      }
      for (k = 1; k <= i; k++) {  if (i == 9 && k == 1) { continue; } printf("%2c", prnt); } nos++; nosp = nosp + 2; printf("\n"); } nos = 4; for (i = 9; i >= 1; (i = i - 2)) {
      for (s = nos; s >= 1; s--) {
       printf("  ");
      }
      for (j = 1; j <= i; j++) {
       printf("%2c", prnt);
      }
      nos++;
      printf("\n");
     }
    
     return 0;
    }


  16.       *
        * * *
      * * * * *
    * * * * * * *
    *           *
    * *       * *
    * * *   * * *
    * * * * * * *
    * * *   * * *
    * *       * *
    *           *
    * * * * * * *
      * * * * *
        * * *
          *
  17. Program:
    #include
    /*
     * nos = Num. of spaces required in the triangle.
     * i   = Counter for the num. of charcters to print in each row
     * skip= A flag for checking whether to
     *       skip a character in a row.
     *
     */
    int triangle(int nos, int i, int skip) {
     char prnt = '*';
     int s, j;
     for (s = nos; s >= 1; s--) {
      printf("  ");
     }
     for (j = 1; j <= i; j++) {
      if (skip != 0) {
       if (i == 4 && j == 1) {
        continue;
       }
      }
      printf("%2c", prnt);
     }
     return 0;
    }
    
    int main() {
     int i, nos = 4;
     for (i = 1; i <= 7; (i = i + 2)) {
      triangle(nos, i, 0);
      nos--;
      printf("\n");
     }
     nos = 5;
     for (i = 1; i <= 4; i++) { triangle(1, i, 0); //one space needed in each case of the formation triangle(nos, i, 1); //skip printing one star in the last row. nos = nos - 2; printf("\n"); } nos = 1; for (i = 3; i >= 1; i--) {
      triangle(1, i, 0);
      triangle(nos, i, 0);
      nos = nos + 2;
      printf("\n");
     }
     nos = 1;
     for (i = 7; i >= 1; (i = i - 2)) {
      triangle(nos, i, 0);
      nos++;
      printf("\n");
     }
     return 0;
    }


  18. * * * * * * * * * * * * * * * * * * * * * * * * *
      *           *   *           *   *           *
        *       *       *       *       *       *
          *   *           *   *           *   *
            *               *               *
          *   *           *   *           *   *
        *       *       *       *       *       *
      *           *   *           *   *           *
    * * * * * * * * * * * * * * * * * * * * * * * * *
  19. Program:
    #include
    
    /*
     * nos = Num. of spaces required in the triangle.
     * i   = Counter for the num. of characters to print in each row
     * skip= A flag for check whether to
     *       skip a character in a row.
     *
     */
    
    int triangle(int nos, int i, int skip) {
     char prnt = '*';
     int s, j;
     for (s = nos; s >= 1; s--) {
      printf("  ");
     }
     for (j = 1; j <= i; j++) {  if (skip != 0) {  if (i == 9 && j == 1) {    continue;  }  } if (i == 1 || i == 9) {  printf("%2c", prnt); } else if (j == 1 || j == i) {  printf("%2c", prnt);  } else {  printf("  "); }  } return 0; } int main() { int i, nos = 0, nosp = -1, nbsp = -1; for (i = 9; i >= 1; (i = i - 2)) {
      triangle(nos, i, 0);
      triangle(nosp, i, 1);
      triangle(nbsp, i, 1);
      printf("\n");
      nos++;
      nosp = nosp + 2;
      nbsp = nbsp + 2;
     }
     nos = 3, nosp = 5, nbsp = 5;
     for (i = 3; i <= 9; (i = i + 2)) {
      triangle(nos, i, 0);
      triangle(nosp, i, 1);
      triangle(nbsp, i, 1);
      printf("\n");
      nos--;
      nosp = nosp - 2;
      nbsp = nbsp - 2;
     }
     return 0;
    }


Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More