Четверг, 28.03.2024, 22:49
Задачи по информатике
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: ignorer, KOT_B_MEIIIKE, PASCAL26, atvrider  
Форум » Решение задач по информатике » Задачи по программированию + блок-схемы » Язык C. (Нужна помощь...)
Язык C.
Ma666oTДата: Среда, 12.05.2010, 11:50 | Сообщение # 1
Полковник
Группа: Новичок
Сообщений: 34
[ 1 ]
Статус: Offline
Здравствуйте! Мне нужна помощь в выполнении этих 2-ух задач(Язык C):

1. Создать односвязный список с помощью массива целых чисел. Удалить в списке первый, третий и пятый элементы. Результирующий список вывести на экран. Порядок чисел в списке задается массивом индексов следующих элементов (next).

2. Создать очередь для целых чисел. Максимальный размер очереди вводится с экрана. Создать функции для ввода и вывода элементов очереди. Ввести в очередь числа с экрана. После этого перейти в режим ввода, при котором перед добавлением элемента происходит удаление одного элемента.

Заранее большое спасибо!!!

Добавлено (12.05.2010, 11:50)
---------------------------------------------
Неужели никто не может мне помочь??!! cry

 
GrihaIДата: Среда, 12.05.2010, 16:53 | Сообщение # 2
Генерал-полковник
Группа: Участник
Сообщений: 89
[ 2 ]
Статус: Offline
Задание 2
Code

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
typedef double INFO;
struct NODE{
  INFO info;
  struct NODE *next;
};
struct NODE *head=NULL, *tail=NULL;
void add(INFO val)
{
  struct NODE *prom=(struct NODE*)malloc(sizeof(struct NODE));
  prom->info=val, prom->next=NULL;
  if (!tail)head=prom;
  else tail->next=prom;
  tail=prom;
}
INFO del(void)
{
  INFO val=head->info;
  struct NODE *prom=head;
  head=prom->next,free(prom);
  return val;
}
void show (void)
{
  struct NODE *prom=head;
  printf ("Содержимое очереди:\n----------------------\n");
  if(!prom)
  {
   printf ("Очередь пуста!\n");
   return;
  }
  while (prom)
  {
   printf ("%g ",prom->info);
   prom =prom ->next;
  }
  printf ("\n");
}
void main()
{
  INFO val;
  show ();
  do
  {
   printf ("Введите элемент (0 - конец ввода): ");
   scanf ("%lg",&val);
   if(!val)break;
   printf ("-> %g\n",val);
   add(val);
  }while (1);
  show();
  printf ("<- %g\n",del());
  show ();
}


Собираю деньги на инв. коляску. С предложениями писать в личку или мыло.
 
Ma666oTДата: Среда, 12.05.2010, 21:18 | Сообщение # 3
Полковник
Группа: Новичок
Сообщений: 34
[ 1 ]
Статус: Offline
Спасибо, но максимальный размер очереди вводится с клавиатуры...
 
GrihaIДата: Среда, 12.05.2010, 21:33 | Сообщение # 4
Генерал-полковник
Группа: Участник
Сообщений: 89
[ 2 ]
Статус: Offline
добавь цикл и все

Собираю деньги на инв. коляску. С предложениями писать в личку или мыло.
 
Форум » Решение задач по информатике » Задачи по программированию + блок-схемы » Язык C. (Нужна помощь...)
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2024