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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
NightVVanderer
1 / 1 / 0
Регистрация: 27.05.2012
Сообщений: 16
#1

Проверка на правильность кода - C++

29.05.2012, 02:56. Просмотров 622. Ответов 2
Метки нет (Все метки)

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
57
58
59
60
// C++ 6.6 I.12.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <fstream>
#include "string"
using namespace std;
 
ifstream in("f.txt");
ofstream out("g.txt");
struct mas
{
    string f,i,o;
    int ses[5];
    int god;
    void print();
};
void mas::print()
{
    out << setw(12) << left << f << setw(10) << i << setw(15) << o;
    for(int i=0; i<5; i++)
        out << setw(3) << ses[i];
    out << setw(4) << god;
}
void sort(mas *a, int n)
{
    mas temp;
    int i,j;
    for(i=0;i<n;i++)
        for(j=n-i;j<n;j--)
            if (a[j].god>a[j-1].god)
            {
                temp=a[i];
                a[j]=a[j-1];
                a[j-1]=temp;
            }
}
int _tmain(int argc, _TCHAR* argv[])
{
    int n=0,i,m;
    mas stud[20];
    in>>m;
    while (in.peek()!=EOF)
    {
        in >> stud[n].f;
        in >> stud[n].i;
        in >> stud[n].o;
        in >> stud[n].god;
        n++;
    }
    sort(stud,n);
    out << m << endl;
    for (i=0; i<n;i++)
        stud.print();
    in.close();
    out.close();
    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
// C++ 5.3 II.12.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;
    
    ifstream in("f.txt");
    ofstream out("g.txt");
    struct ivs
    {
    int st,kol;
    char vid, sort;
    void show();
    void print();
    };
    void ivs::show()
    {
        cout << setw(8) << vid << setw(10) << st << setw(8) << sort << setw(8) << kol << endl;
    }
    void ivs::print()
    {
        out << setw(8) << vid << setw(10) << st << setw(8) << sort << setw(8) << kol << endl;
    }
int _tmain(int argc, _TCHAR* argv[])
{
    ivs sk[4];
    int x,n=0;
    cout << "%=";
    cin >> x;
    while (in.peek()!=EOF)
    {
        in >> sk[n].vid;
        in >> sk[n].st;
        in >> sk[n].sort;
        in >> sk[n].kol;
        sk[n].show();
        n++;
    };
    int j=0;
    for(int i=0; i<n && !j; i++)
    {
        sk[i].st=sk[i].st+(sk[i].st)*(x/100);
    }
    for(int i=0; i<n; i++)
        {
            ivs.print();
        }
    in.close();
    out.close();
    return 0;
}
Каждый раз ругается на .print(); в конце программы.
В первом случае:

1>------ Build started: Project: 2, Configuration: Debug Win32 ------
1>Compiling...
1>2.cpp
1>c:\users\александр\documents\visual studio 2005\projects\2\2\2.cpp(56) : error C2228: left of '.print' must have class/struct/union
1> type is 'mas [20]'
1>Build log was saved at "file://c:\Users\Александр\Documents\Visual Studio 2005\Projects\2\2\Debug\BuildLog.htm"
1>2 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Во втором:

1>------ Build started: Project: 2, Configuration: Debug Win32 ------
1>Compiling...
1>2.cpp
1>c:\users\александр\documents\visual studio 2005\projects\2\2\2.cpp(49) : error C2143: syntax error : missing ';' before '.'
1>c:\users\александр\documents\visual studio 2005\projects\2\2\2.cpp(49) : error C2143: syntax error : missing ';' before '.'
1>Build log was saved at "file://c:\Users\Александр\Documents\Visual Studio 2005\Projects\2\2\Debug\BuildLog.htm"
1>2 - 2 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Подскажите, пожалуйста, что не так и как исправить.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2012, 02:56     Проверка на правильность кода
Посмотрите здесь:

проверка кода на правильность - C++
Используя оператор цикла while с условием и постусловием, решить следующие задачу: найти сумму ряда с точностью е = 10-4, общий член...

Правильность кода - C++
Решал вот эту функцию, которая прикреплена ниже, дошел до такого кода: #include &quot;stdafx.h&quot; #include &quot;stdafx.h&quot; #include &quot;cmath&quot; ...

Проверка на правильность ввода C++ - C++
Приветствую Возник вопрос, написал небольшую программку для вычисления корней квадратного уравнения. Проверки все работают. Остается...

Проверка e-mail на правильность. - C++
как проверить e-Mail на правельность ? Если он неправельный то вывести описание ошибки (подробное). Наобарот - если правельный то...

Правильность кода программы - C++
Здравствуйте. Подскажите правильно ли я записал код по условию, а то нет возможности спросить у кого нибудь как кроме здесь: Составить...

Проверьте правильность кода - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; int main() { setlocale(LC_ALL, &quot;Russian&quot;); int p; float q, n,...

Правильность и рациональность кода - C++
Всем привет! Вот уже прошло 24 часа с момента начала моего обучения С++ :). До этого имел дело с такими языками, как Pascal и PHP. Ко...

Проверьте правильность кода - C++
Здравствуйте. Задали рассчитать площадь треугольника по заданным параметрам: сторонам треугольника ABC и радиусу описанной окружности....

Проверка на правильность ввода значения. - C++
Вот пишу так называемую &quot;проверку на дурака&quot;. Столкнулся с проблемой, код: { double ch; int y=0; do{ y=1; int q=0; int...

Проверка введенного текста на правильность - C++
Здравствуйте, Каким образом можно реализовать проверку введенного текста, пользователем с консоли, на правильность. Например юзер вводит...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
29.05.2012, 03:47     Проверка на правильность кода #2
Цитата Сообщение от NightVVanderer Посмотреть сообщение
C++
1
ivs.print();
заменить на:
C++
1
sk[i].print();
AndreyCarter
0 / 0 / 0
Регистрация: 29.05.2012
Сообщений: 8
29.05.2012, 11:47     Проверка на правильность кода #3
Цитата Сообщение от valeriikozlov Посмотреть сообщение
заменить на:
C++
1
sk[i].print();
Вот именно. Ты вызываешь функцию к ПЕРЕМЕННОЙ твоей структуры, а не к описанию его.
Это тоже самое если бы ты сделал
C++
1
2
3
4
int i;
//-------------
 
int = 10;
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru