Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
бутафор
0 / 0 / 1
Регистрация: 05.10.2010
Сообщений: 43
#1

Шифрование строки, меняя русский алфавит по часовой стрелке - C (СИ)

09.02.2015, 10:47. Просмотров 626. Ответов 3
Метки нет (Все метки)

День добрый. Функция должна брать из файла строку, менять русский алфавит по часовой стрелке, и записывать новую строку в файл. Подскажите, что не так, пожалуйста.
C
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
void encrypt(char* string, char* string1){
int i,j;
char new_string[1000];
FILE *f;
string1=new char[1000];
string1="абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
int z=strlen(string);
if((f=fopen("lab7.txt","w+"))==NULL)
{ printf("Не удалось открыть файл\n");
     _getch(); 
     return;    }
 
fgets(string,1000,f) ;  //Чтение строк из файла
printf ("Исходная строка: %s\n", string); 
for(i=0;i<z;i++){
  for(j=0;j<100;j++){
    if(string[i]==string1[j]){
      new_string[i]=string1[j+1];
 
    }
    else {new_string[i]=string[i]; }
  }
}
 
 printf ("Зашифрованная строка: %s", new_string);           
 
fputs(new_string,f);
fclose(f);  
 
}

http://www.cyberforum.ru/c-beginners/thread1997866.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2015, 10:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Шифрование строки, меняя русский алфавит по часовой стрелке (C (СИ)):

Вершины в порядке обхода по часовой стрелке
Выпуклый многоугольник на плоскости задан своими вершинами, расположенными в...

Поворот массива на 90 градусов по часовой стрелке C
Здравствуйте, тут такая проблема, выходит неправильный результат, когда массив...

Заполнение матрицы от центра по спирали (по часовой стрелке)
написать программу, которая заполняет массив от цента по спирали(по часовой...

Повернуть квадратную матрицу на 90 градусов по часовой стрелке
Повернуть квадратную матрицу на 90 градусов по часовой стрелке

Переместить элементы периметра прямоугольной матрицы на 1 элемент по часовой стрелке
Дана прямоугольная матрица А.Переместить элементы её периметра на 1 элемент по...

3
Doomrunner
0 / 0 / 1
Регистрация: 10.02.2015
Сообщений: 17
10.02.2015, 15:59 #2
w+ или wb+ или w+b – создать файл для чтения и записи, если файл уже существует, он будет открыт, но все имеющиеся в файле данные будут уничтожены, то есть он у тебя читает вечно пустой файл! Пробуй с обычными режимами типа 'r', 'w'. Создай отдельно функцию чтения и записи или попробуй режим 'a+' там он открывает файл если он существует или же создает его, но при этом запись идет в конец файла.
0
бутафор
0 / 0 / 1
Регистрация: 05.10.2010
Сообщений: 43
10.02.2015, 17:12  [ТС] #3
так это же код 1 функции, а не всей программы. Функции чтения и записи в файл тоже есть и они работают нормально,а в этой что-то не так(
0
Doomrunner
0 / 0 / 1
Регистрация: 10.02.2015
Сообщений: 17
10.02.2015, 17:33 #4
смотри вот он проверяет его if((f=fopen("lab7.txt","w+"))==NULL), допустим файла есть если даже нету в любом случае файл пересоздаётся и потом ты сразу выполняешь fgets(string,1000,f), он же пустой. Проверь на пустоту, после if((f=fopen("lab7.txt","w+"))==NULL){...} вставь fseek(f, 0, SEEK_END); long pos = ftell(f); if(pos=0){printf("%s","Пустой!)};
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2015, 17:33
Привет! Вот еще темы с решениями:

Обход матрицы по спирали по часовой стрелке, начиная с левого верхнего угла
Выполнить обход матрицы по спирали по часовой стрелке, начиная с левого...

Дана прямоугольная матрица А. Переместить элементы ее периметра на один элемент по часовой стрелке
Дана прямоугольная матрица А. Переместить элементы ее периметра на один элемент...

Заданы координаты вершин треугольника ABC на плоскости. Вывести их в порядке обхода по часовой стрелке
Заданы координаты вершин треугольника ABC на плоскости. Вывести их в порядке...

Написать программу, которая печатает русский алфавит в определенном виде
Помогите пожалуйста с заданием. Написать программу, которая печатает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru