Форум программистов, компьютерный форум CyberForum.ru

Ошибка при выводе 1-го элемента массива, но правильно выводит последний - C++

Восстановить пароль Регистрация
 
LeoAlecksey
Сообщений: n/a
11.01.2013, 01:54     Ошибка при выводе 1-го элемента массива, но правильно выводит последний #1
Помогите пожалуйста найти ошибку (почему не выводит переменную а?):
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char* argv[])
{  int i,r,n,mas[10]; FILE *f;  
int a,b,c;
b=0;
a=0;
   srand((unsigned)time(NULL));
   f=fopen("file.dat","w+");
   n=10;
   printf("\t stroka: \n\n");
   for (i=0;i<n;i++){r=rand()%20-10; fprintf(f,"%d ",r);}
   rewind(f);
   while (fscanf(f,"%d",&r)!=EOF)printf("%5.1d",r);
   fclose(f);
 
       f=fopen("file.dat","r");
    printf("\n\n \t massiv: \n\n");
    while (fscanf(f,"%d",&mas[i])!=EOF)printf("%5.1d",mas[i]);
 
a=mas[0];   
b=mas[n];
printf("\n\n pervii element ctroki: \t %d", a);
printf("\n\n poslednii element ctroki: \t %d", b);
c=a-b;
printf("\n\n raznost': \t %d",c);
 
   getch();
   return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2013, 01:54     Ошибка при выводе 1-го элемента массива, но правильно выводит последний
Посмотрите здесь:

C++ Если последний элемент массива положителен, то все элементы массива увеличить на квадрат его максимального элемента
C++ Написал прогу по стеку, но при выводе содержимого - выводит только последний добавленный
Как правильно ограничить число знаков после запятой при выводе массива C++
C++ При выводе массива, выводит мусор
C++ При выводе минимального элемента последовательности программа выводит слишком большое число
C++ Ошибка "Ascess violation" при выводе массива
C++ При добавлении студента, сбивается вся структура, и при выводе всего списка студентов, выводит какой то мусор
C++ Ошибка при выводе динамического массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
12.01.2013, 13:50     Ошибка при выводе 1-го элемента массива, но правильно выводит последний #2
Цитата Сообщение от LeoAlecksey Посмотреть сообщение
Помогите пожалуйста найти ошибку (почему не выводит переменную а?):
см комментарии:
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char* argv[])
{  int i,r,n,mas[10]; FILE *f;  
int a,b,c;
b=0;
a=0;
   srand((unsigned)time(NULL));
   f=fopen("file.dat","w+");
   n=10;
   printf("\t stroka: \n\n");
   for (i=0;i<n;i++){r=rand()%20-10; fprintf(f,"%d ",r);}
   rewind(f);
   while (fscanf(f,"%d",&r)!=EOF)printf("%5.1d",r);
   fclose(f);
 
       f=fopen("file.dat","r");
    printf("\n\n \t massiv: \n\n");
    while (fscanf(f,"%d",&mas[i])!=EOF)printf("%5.1d",mas[i]);// вот здесь идет считывание в массив mas[] данных из файла file.dat . А какие значения в цикле while() принимает переменная i ? 
 
a=mas[0];   
b=mas[n];// кстати последний элемент строки mas[n-1]
printf("\n\n pervii element ctroki: \t %d", a);
printf("\n\n poslednii element ctroki: \t %d", b);
c=a-b;
printf("\n\n raznost': \t %d",c);
 
   getch();
   return 0;
}
Yandex
Объявления
12.01.2013, 13:50     Ошибка при выводе 1-го элемента массива, но правильно выводит последний
Ответ Создать тему
Опции темы

Текущее время: 11:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru