/* p4 - 61

Язык Turbo C 2.0
a - простые переменные
j, aa - массивы
s - указатели
1 - 15k, 2 - 16k, 6 - 17k, 8 - 23k, 12 - 24k
*/
#include <conio.h>
#include <ctype.h>
#include <stdio.h>
#include <string.h>
main ()
{
int a, b, c;
float d, e;
char j [80], k [10], l [10]; /* ввод данных */
char m [5] [20];
int p [10] = {1, 23, 4, 7, 8, 0, 1, 9, 4, 7};
char aa [] = "String of Letters in Different Registers.";
int *s, *t;
float *v;
char *y;
printf ("? (1-3) ");
scanf ("%i", &a);
if (a == 1) goto aaa; /* простые программы */
if (a == 2) goto aab; /* ввод данных */
if (a == 3) goto aac; /* дополнительный ввод данных */
printf ("\n");
return;
aaa:
printf ("4. ");
strcpy (j, "Привет, ");
strcpy (k, "мир.");
puts (j);
puts (k);
strcat (j, k);
puts (j);
puts (k);
strcpy (m [0], "Turbo Basic");
strcpy (m [1], "Turbo Pascal");
strcpy (m [2], "Borland C++");
strcpy (m [3], "Turbo Prolog");
strcpy (m [4], "Paradox");
/* Сортировка массива */
printf ("7. Неотсортированный массив: ");
for (a = 0; a < 10; a++) printf ("%i ", p [a]);
for (a = 0; a < 9; a++)
for (b = 0; b < 9 - a; b++)
if (p [b] > p [b + 1])
{
c = p [b];
p [b] = p [b + 1];
p [b + 1] = c;
}
printf ("\nОтсортированный массив: ");
for (a = 0; a < 10; a++) printf ("%i ", p [a]);
d = 10.1;
v = &d;
e = *v;
printf ("\n8. d = %.4g, e = %.4g.\n", d, e);
(*v)++;
printf ("d = %.4g, e = %.4g.\n", d, e);
e = 1 + *v * e;
printf ("d = %.4g, e = %g.\n", d, e);
a = 10;
s = &a;
t = s;
printf ("9. %p, %p.\n", s, t);
printf ("%i, %i.\n", a, *t);
d = 10.1;
s = (int *) &d;
e = *s;
printf ("10. d = %.4g, e = %.4g.\n", d, e);
s = &a;
printf ("11. %p, ", s);
printf ("%p.\n", ++s);
printf ("12. Строка будет напечатана строчными буквами.\n");
y = aa;
while (*y) printf ("%c", tolower (*y++));
printf ("\n");
goto aaz;
aab:
printf ("Введите строку: ");
gets (j); gets (j);
printf ("Введите вторую строку: ");
scanf ("%[0123456789]%s", k, l);
printf ("\n");
printf ("1. Я знаю ваше имя; ваше имя %s.\n", j);
printf ("2. %s..%s.\n", k, l);
printf ("5. Строка '%s' имеет длину %i символов.\n", j, strlen (j));
goto aaz;
aac:
printf ("3. Введите строку длиной менее 80 символов: ");
gets (j); gets (j);
printf ("Вы ввели строку: %s.\n", j);
printf ("Введите еще одну строку длиной менее 80 символов: ");
scanf ("%s", j);
printf ("Вы ввели строку: ");
puts (j);
aaz:
getch ();
printf ("\n");
}

Комментарии

  • 1 янв 2020 16:34

    /*   p5 - 95

        Язык Turbo C 2.0


    a - простые переменные

    j - указатели

    s - массивы

    aa () - функции


    1 - 17k, 3 - 18k

    */



    #include <conio.h>

    #include <stdio.h>

    #include <stdlib.h>

    #include <string.h>


    aa (int a [3] [3], int b [3] [3], int c [3] [3]);   /*   перемножение матриц   */

    ab (const char *);



    main ()

    {

      int a;

      char d;


      char *j [] = {"exe", "com", "dat", "c", "pas", "cpp"};

      int *m, *n;

      int **p;


      char s [80];

      int v [3] [3] = {0, 1, 2, 3, 4, 5, 6, 7, 8};

      int w [3] [3] = {1, 2, 3, 4, 5, 6, 7, 8, 9};

      int x [3] [3];


      printf ("? (1-2) &quot;-);

      scanf ("%i", &a);

      if (a == 1) goto aaa;   /*   простые программы            */

      if (a == 2) goto aab;   /*   дополнительный ввод данных   */

      printf ("\n&quot;-);

      return;


    aaa:

      a = 7;

      m = &a;

      p = &m;

      printf ("2. a = %i, m = %p, p = %p.\n", a, m, p);

      (*m)++;

      printf ("a = %i, m = %p, p = %p.\n", a, m, p);

      **p = 12;

      printf ("a = %i, m = %p, p = %p.\n", a, m, p);


      aa (v, w, x);

      printf ("\n3. Массив x [3] [3]:-|n&quot;-);

      for (a = 0; a < 3; a++)

         printf ("%-5i%-5i%-5i\n", x [a] [0], x [a] [1], x [a] [2]);


      printf ("\n4. &quot;-);

      ab (" Это тест &quot;-);


      printf ("\n5. &quot;-);

      m = malloc (40 * sizeof (int));

      if (!m)

         printf ("Недостаточно памяти.\n&quot;-);

      else

      {

         n = m;

         for (a = 0; a < 40; a++)  *(m + a) = a;

         for (a = 0; a < 40; a++)  printf ("%i  ", *n++);

         free (m);

      }


      printf ("\n&quot;-);


      goto aaz;


    aab:

      printf ("1. &quot;-);

      for (;;-) {

         do {

            printf ("Файлы с расширением: 1. exe, 2. com, 3. dat, 4. c, 5. pas, 6. cpp, 7. quit.\n&quot;-);

            printf ("Ваш выбор: &quot;-);

            d = getche ();

            printf ("\n&quot;-);

         } while (d < '1'  ||  d > '7&#39;-);


         if (d == '7&#39;-) break;

         strcpy (s, "dir *.&quot;-);

         strcat (s, j [d - '1']);

         system (S);

         printf ("\n&quot;-);

      }


    aaz:

      getch ();

      printf ("\n&quot;-);

    }



    aa (int a [3] [3], int b [3] [3], int c [3] [3])   /*   перемножение матриц   */

    {

      int d, e, f;

      for (d = 0; d < 3; d++)

         for (e = 0; e < 3; e++)

         {

            c [d] [e] = 0;

            for (f = 0; f < 3; f++)

               c [d] [e] += a [d] [f] * b [f] [e];

         }

    }


    ab (const char *a) {while (*a) printf ("%c", *a++ + 1);}