Символьные строки. почему не работает? (си) - C (СИ)

Формулировка задачи:

В файле содержится список: Ivanov/1998 Sidorov/1990 Nekrasov/1991 Нужно найти самого молодого и вывести его фамилию. При запуске выходит "Прекращена работа программы" Dev C++
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char *s,*temp,str[80],*fam,*syear;
FILE *in;
in=fopen("C:/data/students.dat","r");
while (fgets(str,80,in))
 
    {
        temp=strstr(s,"/");
        *temp=0;
             syear="1900";
        if      (strcmp(syear,temp+1)>0)
        {
            strcpy(fam,str);
            strcpy(syear,temp+1);
        }
    }
printf("Samiy molodoy\n%s",fam);
getch();
}

Код к задаче: «Символьные строки. почему не работает? (си) - C (СИ)»

textual
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <limits.h>
 
#define N 80
 
int main(void)
{
    char str[N], fam[N], min_fam[N];
    unsigned int year, min_year;
    min_year = UINT_MAX;
    FILE *in = fopen("C:\\data\\students.dat", "r");
 
    if ( !in )
        return 1;
 
    while ( fgets(str, N, in) ) {
        sscanf(str, "%s\\%u", fam, &year);
        if (year < min_year) {
            strcpy(min_fam, fam);
            min_year = year;
    }
    printf("Samiy molodoy\n%s", min_fam);
    fclose(in);
    getch();
}

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

5   голосов, оценка 3.400 из 5


СОХРАНИТЬ ССЫЛКУ