Определить код ASCII произвольного символа из введённой с клавиатуры строки - C (СИ)
Формулировка задачи:
Помогите пожалуйста написать прогу в си
вот код паскаля, надо написать её же в си
заранее спасибо=)
Program P1;
uses crt;
var sstroka: string;
i: integer;
rez: array[1..250] of string;
istroka: array[1..250] of integer;
begin
clrscr;
write('Vvedite stroku:=');
readln(sstroka);
for i:=1 to length(sstroka) do
istroka[i]:=ord(sstroka[i]);
for i:=1 to length(sstroka) do
while(istroka[i]) <> 0 do
begin
if istroka[i] mod 2=0 then
rez[i]:='0' + rez[i]
else
rez[i]:='1' + rez[i];
istroka[i]:=istroka[i] div 2;
end;
writeln(chr(201), chr(205), chr(203), chr(205), chr(205), chr(205), chr(203), chr(205), chr(205), chr(205), chr(205), chr(187));
begin
for i:=1 to length(sstroka) do
writeln(chr(186), sstroka[i],chr(186),ord(sstroka[i]):3,chr(186),rez[i],chr(186));
end;
writeln(chr(200),chr(205),chr(202),chr(205),chr(205),chr(205),
chr(202),chr(205),chr(205),chr(205),chr(205),chr(205),chr(205),
chr(205),chr(188));
readln;
end.Решение задачи: «Определить код ASCII произвольного символа из введённой с клавиатуры строки»
textual
Листинг программы
#include <stdio.h>
int main (void)
{
unsigned char s[255+1];
printf("vvedite stroku: ");scanf("%255s",s);
int i=0,j;
while (s[i])
{
printf("<br>\n");
printf("| %c | %03d | ",s[i],s[i]);
for (j=7;j>=0;j--)
printf("%d",(s[i] >> j)%2);
printf(" |\n----------------------\n");
i++;
}
printf("\nPress any key...");
getch();
return 0;
}
Объяснение кода листинга программы
В этом коде:
- Объявлена переменная
sтипаunsigned charсо значением 255, которая будет использоваться как массив символов. - Пользователю предлагается ввести строку с клавиатуры, которая будет сохранена в переменной
s. - Затем код выводит на экран символ и его ASCII-код.
- Далее происходит циклическое обращение к каждому символу в строке.
- Для каждого символа выводится его ASCII-код, а также 8 битов, которые представляют этот символ в двоичной системе счисления.
- В конце программы пользователю предлагается нажать любую клавишу.
- Программа завершается, и возвращается 0.