С Новым годом! Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
3 / 3 / 5
Регистрация: 21.10.2012
Сообщений: 182

Даны 2 кода по созданию списка, в одном создание списка в функции main в другом в отдельной функции, один код работает а другой нет

21.04.2013, 13:55. Показов 687. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include<stdio.h>
#include<malloc.h>
#include<string.h>
typedef struct sp
{
char *info;
struct sp *next;
}sp;
 
char * stroka();
sp *vivodspiska(sp *head);
 
int main(){
    int k;
    char a[100];
    sp *head,*buf,*prev;
    head=NULL;
    printf("Vvedite kolichestvo strok:\n");
    scanf("%d",&k);
    printf("Vvedite stroki:\n");
    while(k--){
    scanf("%s",a);
        if(head==NULL){
            head=(sp*)malloc(sizeof(sp));
            head->info=(char*)malloc(strlen(a)+1);
            strcpy(head->info,a);
            head->next=NULL;
            prev=head;
        }
        else{
            buf=(sp*)malloc(sizeof(sp));
            buf->info=(char*)malloc(strlen(a)+1);
            strcpy(buf->info,a);
            buf->next=NULL;
            prev->next=buf;
            prev=buf;
            }
    }
    printf("Otvet\n");
    vivodspiska(head);
    return 0;
}
 
sp *vivodspiska(sp *head){
    while(head)
    {
        printf("%s\n", head->info);
        head=head->next;
    }
    return 0;
}
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include<stdio.h>
#include<malloc.h>
#include<string.h>
typedef struct sp
{
char *info;
struct sp *next;
}sp;
 
char * stroka();
sp *vivodspiska(sp *head);
void sozdaniespiska();
 
int main(){
    int k;
    char a[100];
    sp *head,*buf,*prev;
    head=NULL;
    printf("Vvedite kolichestvo strok:\n");
    scanf("%d",&k);
    printf("Vvedite stroki:\n");
    while(k--){
    scanf("%s",a);
    sozdaniespiska(a,*head,*buf,*prev);
    }
    printf("Otvet\n");
    vivodspiska(head);
    return 0;
}
 
sp *vivodspiska(sp *head){
    while(head)
    {
        printf("%s\n", head->info);
        head=head->next;
    }
    return 0;
}
 
void sozdaniespiska(char a[], sp *head,sp *buf,sp *prev){
     if(head==NULL){
            head=(sp*)malloc(sizeof(sp));
            head->info=(char*)malloc(strlen(a)+1);
            strcpy(head->info,a);
            head->next=NULL;
            prev=head;
        }
        else{
            buf=(sp*)malloc(sizeof(sp));
            buf->info=(char*)malloc(strlen(a)+1);
            strcpy(buf->info,a);
            buf->next=NULL;
            prev->next=buf;
            prev=buf;
            }
}
Я наверное неправильно организовал функцию, скажите как правильно.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.04.2013, 13:55
Ответы с готовыми решениями:

Код в одном проекте работает, в другом нет
Добрый вечер.у меня возникла такая проблема:я писала функцию по удалению оценок в одном проекте (пишу на Visual Studio 2012),а вся...

Сформировать DropDownList, одинаковый код в одном месте работает в другом нет
Есть следующие модели public class Fpsu { public int id { get; set; } public string SN { get; set; } ...

Даны числа D1 и D2 и указатель P0 на один из элементов непустого двусвязного списка. Добавить в начало списка новый
Даны числа D1 и D2 и указатель P0 на один из элементов непустого двусвязного списка. Добавить в начало списка новый элемент со значением D1...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.04.2013, 13:55
Помогаю со студенческими работами здесь

Удаление элементов списка, находящегося в одном файле, из списка, имеющегося в другом файле
По сути есть два списка, одни - файлы в папке, которые рекурсивно сканятся и в одну строчку складываются, а другой список файлов в...

Меню на укоз, убрать точки списка, на одном сайте работает а на др нет.(
Меню на укоз, на одном сайте всё норм а на другом оно работает не так. Надо точки убрать слева и вообще оно искривленно. Вот...

Почему один код работает, а другой нет?
Здравствуйте, подскажите, пожалуйста, сижу уже который день над этой проблемой, проблема та, впроде бы фигня, но ни как не могу добавить...

Создание списка, печать списка на экран, добавления элемента в начало списка, конец списка
Построить динамическую структуру типа список . Необходимо реализовать следующие процедуры: 1. создание списка. 2. печать списка на...

Даны два списка. Каждый элемент первого списка ассоциативно связан соответствующим элементом второго списка
Помогите пожалуйста Даны два списка: список студентов и список их успеваемости. Каждый элемент первого списка ассоциативно связан с...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru