Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/22: Рейтинг темы: голосов - 22, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 17.11.2009
Сообщений: 29

Считывание символов и вывод на экран

23.11.2009, 21:23. Показов 4088. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите найти ошибку, что я делаю не так, может как то по другому нужно считать количество символов?

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
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
 
void main()
{
    int i=0,t=1,N;
    char c;
    float d,b;
    float Ver[99];
    char Name[99];
    char y[99];
    FILE *f=NULL;//указатель для работы с файлом
        f=fopen("C:\\1.txt","r");
      while(y[i])!='\0')  // ищем количество символов в строке N будет кол-во символов
{
        fscanf(f,"%c%*",&(y[i]));//считывание самих символов
                i++;
        }
        N=i      ;
        printf("N= %d",N);
 
        f=fopen("C:\\1.txt","r");
    for(i=0;i<N;i++)
    {
        fscanf(f,"%c%*",&(Name[i]));//считывание самих символов
        fscanf(f,"%f%*",&(Ver[i]));//и их вероятностей
    }
    //пузырьковая сортировка
    while(t)
    {
        t=0;
        for(i=0;i<N-1;i++)
        {
            if(Ver[i]<Ver[i+1])
            {
                b=Ver[i];
                Ver[i]=Ver[i+1];
                Ver[i+1]=b;
                c=Name[i];
                Name[i]=Name[i+1];
                Name[i+1]=c;
                t=1;
            }
        }
    }
for (i=0; i<N; i++)
{
printf ("\nVero9T \n %f", Ver[i]);
printf ("\nNAME %c", Name[i]);
}
scanf("%f")   ;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.11.2009, 21:23
Ответы с готовыми решениями:

Считывание текста из файла и вывод на экран
Помогите пожалуйста написать мне программу. Я буду очень благодарна в вашей помощи. Просто есть сложности некоторые. Написать программу,...

Считывание текста из файла и вывод на экран только цитаты
Написать программу, которая считывает текст из файла и выводит на экран только цитаты, то есть предложения, заключенные в кавычки ...

Запись текста в файл\вывод его на экран\сохранение\считывание информации из файла
Ввести текст произвольного содержания в память ПЭВМ. Вывести на экран. Записать текст в файл. После записи текста в файл информация...

8
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
24.11.2009, 07:33
ошибки в fscanf и scanf

C
1
while(y[i])!='\0')
правая скобка внутри зачем
0
0 / 0 / 0
Регистрация: 17.11.2009
Сообщений: 29
24.11.2009, 10:01  [ТС]
А вы чем ошибки? это опечатка со скобкой.

Добавлено через 1 минуту
программа работает, но нечего не делает, я где то условие не правильно задаю при подсчете символов, покажите где неправильно.
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
24.11.2009, 11:02
Цитата Сообщение от KPun Посмотреть сообщение
while(y[i])!='\0') // ищем количество символов в строке N будет кол-во символов
{
fscanf(f,"%c%*",&(y[i]));//считывание самих символов
i++;
}
Вот эти строки замените на:
C
1
2
          while(fscanf(f,"%c%*",&(y[i]))!= EOF )  // èùåì êîëè÷åñòâî ñèìâîëîâ â ñòðîêå N áóäåò êîë-âî ñèìâîëîâ
                i++;
Такой код позволит посчитать Вам количество символов. Но остальная часть кода - некорректная.
0
0 / 0 / 0
Регистрация: 17.11.2009
Сообщений: 29
24.11.2009, 11:06  [ТС]
а почему?
у меня есть файл который выглядит так
"a 0.2 b 0.1 c 0.3 d 0.4"
нужна что бы буквы в один массив а числа в другой.
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
24.11.2009, 11:21
Меня смутил ваш коментарий "//и их вероятностей" в строке 27. Т.к. не знал что у Вас записано в файле 1.txt
Код нормально заработал?
0
0 / 0 / 0
Регистрация: 17.11.2009
Сообщений: 29
24.11.2009, 12:17  [ТС]
нет, непонятное вообще что то делает, кол-во символов считает не правильно.
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
24.11.2009, 12:58
Я выделил ваш кусок кода, который у Вас есть сейчас, и который предложу заменить ниже на другой и немного его опишу, что бы было понятно, что у Вас не так:
C
1
2
3
4
5
6
        char y[99];
        FILE *f=NULL;//указатель для работы с файлом
        f=fopen("C:\\1.txt","r");
        while(fscanf(f,"%c%*",&(y[i]))!= EOF )
                i++; 
               N=i      ;
сипользуя fscanf(f,"%c%*",&(y[i])), у вас считываются все символы (при этом увеличивается счетчик i). Т.е. считывая такой кусок строки "0.1", у вас считается три символа('0' '.' '1') и соответственно счетчик i увеличится на 3. Предлагаю Вам сделать не так - а лучше посчитать пробелы и соответственно по количеству пробелов вычислить сколько символов в строке (но это при условии что формат строки будет таким как Вы указали). И в этом случае нам не нужен будет char y[99]; Поэтому предлагаю такой вариант этого куска кода:
C
1
2
3
4
5
6
7
8
9
      char y;
        FILE *f=NULL;//óêàçàòåëü äëÿ ðàáîòû ñ ôàéëîì
        f=fopen("C:\\1.txt","r");
          while(fscanf(f,"%c",&y)!= EOF )  // èùåì êîëè÷åñòâî ñèìâîëîâ â ñòðîêå N áóäåò êîë-âî ñèìâîëîâ
{
                //ñ÷èòûâàíèå ñàìèõ ñèìâîëîâ
                if(y==' ')i++;
                }
                N=(i+1)/2;
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
25.11.2009, 02:48
Цитата Сообщение от KPun
А вы чем ошибки? это опечатка со скобкой.
почитай про fscanf, а то спецификаторы неправильно ставишь

C
1
scanf("%f")
scanf и fscanf принимают одинаковые спецификаторы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.11.2009, 02:48
Помогаю со студенческими работами здесь

Вывод на экран символов
Может кто объяснить, как вывести не цифрами вывод а символами? #include &lt;stdio.h&gt; #include &lt;string.h&gt; const int...

Замена символов в файле и его вывод на экран
Здравствуйте, столкнулся с проблемой. В текстовом файле нужно заменить все пробелы на знак &quot;_&quot; (без кавычек) и вывести этот...

Вывод на экран первой части таблицы кодировки символов
Помогите пожалуйста, написать программу, которая выводит на экран первую часть таблицы кодировки символов (символы с кодами от 0 до 127)....

Считывание символов в потоке и вывод на экран
Добрый день! Помогите разобраться плиз) Мне по заданию надо синхронизировать 1 поток и основую программу с помощью мьютекса. Как...

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


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru