Вывести таблицу ASCII-символов, где каждый элемент записан в формате <код>-<символ> - C (СИ)

  1. вывести таблицу ASCII-символов, где каждый элемент записан в формате <код>-<символ>, например, 97-a. На каждой строке нужно расположить по 10 символов, для управляющих символов вывести только его код (см. ctype.h для определения категории символа). Должно получиться что-то вроде: $ ./a.out 0- 1- 2- 3- 4- 5- 6- 7- 8- 9- 10- 11- 12- 13- 14- 15- 16- 17- 18- 19- 20- 21- 22- 23- 24- 25- 26- 27- 28- 29- 30- 31- 32- 33-! 34-" 35-# 36-$ 37-% 38-& 39-' 40-( 41-) 42-* 43-+ 44-, 45-- 46-. 47-/ 48-0 49-1 50-2 51-3 52-4 53-5 54-6 55-7 56-8 57-9 58-: 59-; 60-< 61-= 62-> 63-? 64-@ 65-A 66-B 67-C 68-D 69-E 70-F 71-G 72-H 73-I 74-J 75-K 76-L 77-M 78-N 79-O 80-P 81-Q 82-R 83-S 84-T 85-U 86-V 87-W 88-X 89-Y 90-Z 91-[ 92-\ 93-] 94-^ 95-_ 96-` 97-a 98-b 99-c 100-d 101-e 102-f 103-g 104-h 105-i 106-j 107-k 108-l 109-m 110-n 111-o 112-p 113-q 114-r 115-s 116-t 117-u 118-v 119-w 120-x 121-y 122-z 123-{ 124-| 125-} 126-~ 127-


textual

Код к задаче: «Вывести таблицу ASCII-символов, где каждый элемент записан в формате <код>-<символ> - C (СИ)»

~/prog/c $ ./ascii
  0-    1-    2-    3-    4-    5-    6-    7-    8-    9-  
 10-   11-   12-   13-   14-   15-   16-   17-   18-   19-  
 20-   21-   22-   23-   24-   25-   26-   27-   28-   29-  
 30-   31-   32-   33-!  34-"  35-#  36-$  37-%  38-&  39-' 
 40-(  41-)  42-*  43-+  44-,  45--  46-.  47-/  48-0  49-1 
 50-2  51-3  52-4  53-5  54-6  55-7  56-8  57-9  58-:  59-; 
 60-<  61-=  62->  63-?  64-@  65-A  66-B  67-C  68-D  69-E 
 70-F  71-G  72-H  73-I  74-J  75-K  76-L  77-M  78-N  79-O 
 80-P  81-Q  82-R  83-S  84-T  85-U  86-V  87-W  88-X  89-Y 
 90-Z  91-[  92-\  93-]  94-^  95-_  96-`  97-a  98-b  99-c 
100-d 101-e 102-f 103-g 104-h 105-i 106-j 107-k 108-l 109-m 
110-n 111-o 112-p 113-q 114-r 115-s 116-t 117-u 118-v 119-w 
120-x 121-y 122-z 123-{ 124-| 125-} 126-~ 127-  
~/prog/c $

СДЕЛАЙТЕ РЕПОСТ

6   голосов, оценка 3.833 из 5



Похожие ответы
  1. zss, Спасибо! Скажите, вот хочу что бы он мне выводил данные, фамилии которых начинается на букву В, Г, Д. Он не показывает, подскажете почему?C++ (Qt)1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 #include #include #include #include struct TZap { char FIO[30];   double s_b, mat, xum, inf, fiz, gr, god; } Zap; int size = sizeof(TZap); FILE *Fz, *Ft; char File_Zap[] = "zapisi.dat"; char File_Rez[] = "rezult.txt"; void Out(TZap);   int main() { int kod, D_f, i = 0, j, kol;   double s_b, mat, xum, inf, fiz, gr, god; long len; TZap st, *mas_Z; Ft = fopen(File_Rez, "w"); while (true) { puts("\n Create - 1\n Add - 2\n View - 3\n Sort - 4\n EXIT - 0"); scanf("%d", &kod); switch (kod) { case 1: if ((Fz = fopen(File_Zap, "wb")) == NULL) { puts("\n Create ERROR!"); //return; } fclose(Fz); printf("\n Create New File %s !\n", File_Zap); break; case 2: Fz = fopen(File_Zap, "ab"); printf("\n F.I.O. - "); fflush(stdin); gets(Zap.FIO); printf(" God rozdeniya - "); fflush(stdin); scanf("%lf", &Zap.god); printf(" Nomer gruppi - "); scanf("%lf", &Zap.gr); printf(" Fizika - "); scanf("%lf", &Zap.fiz); printf(" Matematika - "); scanf("%lf", &Zap.mat); printf(" Informatika - "); scanf("%lf", &Zap.inf); printf(" Xumuya - "); scanf("%lf", &Zap.xum);   Zap.s_b = (Zap.fiz + Zap.mat + Zap.inf + Zap.xum) / 4;   fwrite(&Zap, size, 1, Fz); fclose(Fz); break; case 3: if ((Fz = fopen(File_Zap, "rb")) == NULL) { puts("\n Open ERROR!"); //return; } // printf("\n\t —-----------------— Informations —-------------------\n"); printf("\n\t FIO , god ,nomer gr, fiz , mat , inf , xum ,sredball\n"); // fprintf(Ft, "\n\t —-----------------— Informations —-------------------"); while (1) { if (!fread(&Zap, size, 1, Fz)) break; Out(Zap); } fclose(Fz); break; case 4: Fz = fopen(File_Zap, "rb"); D_f = fileno(Fz); len = filelength(D_f); kol = len / size; mas_Z = new TZap[kol]; // for (i = 0; i < kol; i++) fread((mas_Z + i), size, 1, Fz); fclose(Fz); printf("\n\t---— S O R T —---\n"); fprintf(Ft, "\n\t---— S O R T —---\n"); for (i = 0; i < kol - 1; i++) if ((mas_Z[i].FIO[0] == 'В') && (mas_Z[i].FIO[0] == 'Г') && (mas_Z[i].FIO[0] == 'Д')) //&& ((mas_Z[i].mat == 8) || (mas_Z[i].mat == 9))) //888 { } for (i = 0; i < kol; i++) Out(mas_Z[i]);   delete[]mas_Z; break; case 0: fclose(Ft); //888 //return; }     } }     void Out(TZap z) { printf("\n %20s , %6.0lf , %6.0lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf", z.FIO, z.god, z.gr, z.fiz, z.mat, z.inf, z.xum, z.s_b); fprintf(Ft, "\n %20s , %6.0lf , %6.0lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf", z.FIO, z.god, z.gr, z.fiz, z.mat, z.inf, z.xum, z.s_b); }Добавлено через 1 минутуQwerty_Wasd, Спасибо! Скажите, вот хочу что бы он мне выводил данные, фамилии которых начинается на букву В, Г, Д. Он не показывает, подскажете почему?C++ (Qt)1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 #include #include #include #include struct TZap { char FIO[30];   double s_b, mat, xum, inf, fiz, gr, god; } Zap; int size = sizeof(TZap); FILE *Fz, *Ft; char File_Zap[] = "zapisi.dat"; char File_Rez[] = "rezult.txt"; void Out(TZap);   int main() { int kod, D_f, i = 0, j, kol;   double s_b, mat, xum, inf, fiz, gr, god; long len; TZap st, *mas_Z; Ft = fopen(File_Rez, "w"); while (true) { puts("\n Create - 1\n Add - 2\n View - 3\n Sort - 4\n EXIT - 0"); scanf("%d", &kod); switch (kod) { case 1: if ((Fz = fopen(File_Zap, "wb")) == NULL) { puts("\n Create ERROR!"); //return; } fclose(Fz); printf("\n Create New File %s !\n", File_Zap); break; case 2: Fz = fopen(File_Zap, "ab"); printf("\n F.I.O. - "); fflush(stdin); gets(Zap.FIO); printf(" God rozdeniya - "); fflush(stdin); scanf("%lf", &Zap.god); printf(" Nomer gruppi - "); scanf("%lf", &Zap.gr); printf(" Fizika - "); scanf("%lf", &Zap.fiz); printf(" Matematika - "); scanf("%lf", &Zap.mat); printf(" Informatika - "); scanf("%lf", &Zap.inf); printf(" Xumuya - "); scanf("%lf", &Zap.xum);   Zap.s_b = (Zap.fiz + Zap.mat + Zap.inf + Zap.xum) / 4;   fwrite(&Zap, size, 1, Fz); fclose(Fz); break; case 3: if ((Fz = fopen(File_Zap, "rb")) == NULL) { puts("\n Open ERROR!"); //return; } // printf("\n\t —-----------------— Informations —-------------------\n"); printf("\n\t FIO , god ,nomer gr, fiz , mat , inf , xum ,sredball\n"); // fprintf(Ft, "\n\t —-----------------— Informations —-------------------"); while (1) { if (!fread(&Zap, size, 1, Fz)) break; Out(Zap); } fclose(Fz); break; case 4: Fz = fopen(File_Zap, "rb"); D_f = fileno(Fz); len = filelength(D_f); kol = len / size; mas_Z = new TZap[kol]; // for (i = 0; i < kol; i++) fread((mas_Z + i), size, 1, Fz); fclose(Fz); printf("\n\t---— S O R T —---\n"); fprintf(Ft, "\n\t---— S O R T —---\n"); for (i = 0; i < kol - 1; i++) if ((mas_Z[i].FIO[0] == 'В') && (mas_Z[i].FIO[0] == 'Г') && (mas_Z[i].FIO[0] == 'Д')) //&& ((mas_Z[i].mat == 8) || (mas_Z[i].mat == 9))) //888 { } for (i = 0; i < kol; i++) Out(mas_Z[i]);   delete[]mas_Z; break; case 0: fclose(Ft); //888 //return; }     } }     void Out(TZap z) { printf("\n %20s , %6.0lf , %6.0lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf", z.FIO, z.god, z.gr, z.fiz, z.mat, z.inf, z.xum, z.s_b); fprintf(Ft, "\n %20s , %6.0lf , %6.0lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf , %6.3lf", z.FIO, z.god, z.gr, z.fiz, z.mat, z.inf, z.xum, z.s_b); }

  1. I need help,guys Нужно написать программу, которая выделяет из строки заданное количество слов, начиная со слова с заданным номером. Строка, количество слов, номер первого слова передаются в функцию в качестве параметров. При реализации функции запрещается пользоваться функциями стандартной библиотеки языка C. Под термином «слово» понимается любая последовательность символов, ограниченная любым количеством пробелов и/или символом начала/конца строки. С меня большущее спасибо.

  1. Помогите пожалуйста составить программу, которая печатает на экране квадратную матрицу, размерность которой вводит пользователь с клавиатуры. 1 1 . . . . 1 2 2 . . . 2 3 3 3 . 3 . . . . . n . . . 0

  1. Создать массив, заполнить 20 элементами, сложить и вывести на экран все кратные 3Добавлено через 4 минуты Помогите плиз

  1. Сформировать массив M, элементы которого mi = Cni , где: Cni = n! / i! (n - i)! , n = 20; i = 1,2,…, 5 Должно быть минимум две функции, первая - заполнение массива, вторая - вывод массива на экран.

  1. Заполнить одномерный массив случайными числами. Вывести на экран все элементы массива, являющимся двухзначными числами. Буду благодарен)))

  1. Собственно задание:Упражнение 1.13. Напишите программу, печатающую гистограммы длин вводимых слов. Гистограмму легко рисовать горизонтальными полосами. Рисование вертикальными полосами - более трудная задача.C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 #include #include #define IN 1 #define OUT 0 main () {     int c, i, length, state, max, l;     int wordl[15];     state = OUT;     l = 0;     max = 0;     for (i = 0; i < 15; ++i)         wordl[i] = 0;     while ((c=getchar()) != EOF)         if (isalpha(c)){             ++length;             state = IN;         }         else if (state = IN) {             state = OUT;             ++wordl[length];             if (max < length)                 max = length;         }     for (i = 0; i < max; ++i)         printf("%4d", i);     for (i = 0; i < 15; ++i) {         printf ("%d", i);         while (l <= wordl[i]*4) {             ++l;             printf("#");         }         } }Мутительное начало для меня. Помогите разобраться. Вылетает в segmentation fault.

  1. C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #include #include #include int main() {     setlocale(LC_ALL, "Russian");     int a[10][10];     printf ("Введите кол-во строк и столбцов не больше 10-ти\n");     int n, m;     printf ("Кол-во строк =");     scanf ("%d", &n);     printf ("Кол-во столбцов =");     scanf ("%d", &m);     int i, j;     for (i=0; i

  1. Задача: Вывести первую позицию незакрытой скобки. Есть код, но он выводит позицию не первую позицию.Кто может помогите фиксануть, или предложите свою функцию по нахождению позиции.C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 #include #include #include   ///#2 Функция для нахождения кол-ва скобок и проверка на расстановку int func(const char * text,char l, char r)// text - сюла передается текст // l/r - скобки {     int count=0;//счётчик символов     ///Кол-во L и R скобок     int num_l=0;//кол-во скобок l     int num_r=0;//...     int count_l=0;//номер позиции скобки     int count_r=0;//...     while(*text){//пока цикл не пройдёт по всем симвролам из текста будет выполняться код         count++;//если новый символ, то +1         if(*text == l){//если встрелилась левая скобка...             num_l++;//+1 к кол-ву левых             count_l=count;//сохраняем её позицию         }         if(*text == r){//...             num_r++;//...             count_r=count;//...         }         text++;//переключает на следующий символ из текста ( если он есть )     }     ///Проверка на правильность расставления скобок и позиция не закрытой     if( num_l == num_r ) printf("Все скобки закрыты!");     else if( num_l > num_r ){         printf("Не закрыта ЛЕВАЯ скобка!\n");         printf("Номер позиции: %d\n",count_l);     }     else if( num_r > num_l ){         printf("Не закрыта ПРАВАЯ скобка!\n");         printf("Номер позиции: %d\n",count_r);     } }   ///#1 Начало void main(void) {     setlocale(LC_ALL,"Rus");     const char l='(',r=')';// постоянные а и б равыне скобкам     const char *text = "(1+2)*(1+2)*1+2)";// TEXT     printf("TEXT >\t\t%s\n\n",text);// \t - табуляция (отступ)     func(text,l,r);//передаёт в фукнцию текс и скобки }

  1. Помогите, пожалуйста, только начал изучать язык, нашел в сборнике задач для паскаля такое задание : Во введенной пользователем строке посчитать количество букв «а» и «о» вывести их число на экран. Как его правильно выполнить?