Строка: поменять местами заданные имя и фамилию - C (СИ)
Формулировка задачи:
Сегодня столкнулся с проблемой,что я совершенно не знаю как юзать строки,их расположение памяти в т.д
Есть идеи,как написать программу,которая принимает строку(Bill,Gates) и на выводе должно вывести (Gates,Bill).
#define N 20 #define stop "end" int main(){ char mass[N],mass1[N]; int i=0; for(i=0;;i++){ gets_s(mass); if(strcmp(mass,stop)==0){ break;} if(mass[i]!=','){ mass1[i]=mass[i];} else{break;}} printf("%s",mass1);
Решение задачи: «Строка: поменять местами заданные имя и фамилию»
textual
Листинг программы
#include <stdio.h.> int main() { char str[128];// = "(Bill,Gates)"; char Name[64], LastName[64]; fgets(str, sizeof(str), stdin); sscanf(str, "(%[^,],%[^)]", Name, LastName); printf("(%s,%s)", LastName, Name); return 0; }
Объяснение кода листинга программы
- Подключение стандартной библиотеки ввода-вывода
- Объявление массива строки для ввода с клавиатуры
- Объявление двух массивов строк для хранения имени и фамилии
- Считывание строки с клавиатуры в массив str
- Использование функции sscanf для разбиения строки на имя и фамилию и сохранение их в массивы Name и LastName соответственно
- Вывод результата на экран с помощью функции printf
- Возврат значения 0, что означает успешный конец работы программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д