Добавление\удаление Строк В Таблицы [c++]

world77

New member
11.01.2013
1
0
#1
Доброго времени суток. Помогите пожалуйста. Нужно написать программу задание представлено ниже. Листинг предоставить не могу, программа не работала и я удалила =(. Надеюсь на ваше понимание. Если нужно, заплачу.

Задание:
Создание программ из нескольких файлов
Для данных, которые обрабатывались в лабораторной работе №3, разработать программу, которая обеспечивает:
• добавление новых строк в таблицу;
• удаление строки с заданным номером из таблицы;
• корректировка строки с заданным номером;
• вывод на экран всей таблицы.
Программа должна состоять, как минимум, из двух файлов: в первом файле должна находиться главная программа, которая осуществляет выбор в диалоговом режиме одного из вышеприведенных действий (меню), во втором файле - функции, которые реализуют эти действия (для каждого действия своя функция).
Программу компоновать с помощью проекта.

Вот листинг Лаб. Р.№3:

Код:
# include <stdio.h>
# include <string.h>
# include <locale.h>
# include <stdlib.h>

struct settings
{
char name[10];
float weight;
int el;
int dr;
};

int main()
{
int const n=7;
int i;
struct settings k[n];
struct settings m;
setlocale(LC_ALL,"RUS");
printf ("Введите название хим. элемента 7 раз\0");
printf ("\n");
for(i=0; i<n; i++)
{
scanf ("%s", k[i].name);
}
printf ("Введите ширину запрещенной зоны 7 раз\0");
printf ("\n");
for(i=0; i<n; i++)
{
scanf ("%f", &k[i].weight);
}
printf ("Введите движение электронов 7 раз\0");
printf ("\n");
for(i=0; i<n; i++)
{
scanf ("%d", &k[i].el);
}
printf ("Введите движение дырок 7 раз\0");
printf ("\n");
for(i=0; i<n; i++)
{
scanf ("%d", &k[i].dr);
}
for(i=0;i<n;i++)
{
for(int j = 0;j<n-1;j++)
{
if (strcmp(k[j].name, k[j+1].name)>=0)
{
m=k[j];
k[j]=k[j+1];
k[j+1]=m;
}
}
}
printf ("Свойства полупроводников\n");
printf ("Вещество | Ширина запрещенной зоны | Движение электронов | Движение дырок\n");
for (i=0; i<n; i++)
{
printf ("%5s%17.2f%23d%23d\n", k[i].name, k[i].weight, k[i].el, k[i].dr );
}
printf ("Единицы измерения: ширина запрещенной зоны - эв; движение - кв.см/сек\n");	
system ("pause");
return 0;
}