Ошибки в программах си
В этой статье мы разберем основные синтактические ошибки в программах си, научимся искать их в программе и исправлять. Наиболее частые ошибки в программах c++ си
Пропустили после оператора знак точка с запятой;
Забыли объявить переменную
Неправильно указали имя оператора
Забыли поставить открывающую или закрывающую фигурную скобку { или } в условных или циклических операторах или в процедурах
Ошибка в программе си Пропустили после оператора знак точка с запятой;
На примере простейшей программы на си разберем эту ошибку
#include <stdio.h>
#include <conio.h>
main()
{
printf("Hello world!") //забыли точку с запятой
getch(); // ждем нажатия любой кнопки
}
При запуске программы в нижнем окне мы увидим сообщение об ошибке в программе си
expected `;' before "getch" Т.е. если видим фразу expected `;' значит мы пропустили ;
Красным цветом будет выделено место ошибки.

Компилятор нам указывает пропущено ; до getch
Ищем в программе это место и ставим ; после оператора си
printf("Hello world!");
Ошибка в программе си забыли объявить переменную
На примере программы на си сложения двух чисел разберем эту ошибку
#include <stdio.h>
#include <conio.h>
main()
{
int b;// забыли объявить переменную a
int c;
a=10;
b=20;
c=a+b;
printf("%d+%d= %d", a,b,c);
getch();
}
При запуске программы окно ошибок выдаст
`a' undeclared (first use this function)
Т.е. если мы видим фразу undeclared, значит мы пропустили объявление переменной.

Мы должны подняться наверх программы или функции, где используется переменная и объявить переменную.
int a;
Ошибка в программе си Неправильно указали имя оператора
На примере простейшей программы на си разберем эту ошибку
#include <stdio.h>
#include <conio.h>
main()
{
pritf("Hello world!"); //неправильно указан оператор printf
getch(); // ждем нажатия любой кнопки
}
При запуске этой программы компилятор выдаст
`pritf' undeclared (first use this function)
И красным цветом выделит в программе си место ошибки
Если мы видим `слово' undeclared, то значит либо мы неправильно написали оператор, либо используем не объявленную переменную. Мы должны перейти на красную строку в программе си, где ошибка и исправить оператор на правильный
printf("Hello world!");
Ошибка в программе си Забыли поставить открывающую или закрывающую фигурную скобку { или }
На примере программы на си поиска максимального из трех чисел разберем эту ошибку
#include <stdio.h>
#include <conio.h>
main()
{
float a,b,c, max;
printf("введите первое число ");
scanf("%f", &a);
printf("введите второе число ");
scanf("%f", &b);
printf("введите третье число ");
scanf("%f", &c);
max=a;
if (b>max)
{
max=b; // забыли поставить закрывающую скобку
if (c>max)
{
max=c;
}
printf("максимальное число %f", max);
getch();
}
При запуске этой программы на си, компилятор выдаст ошибку
expected `}' at end of input.

Если мы видим эту фразу, то ищем все условия и циклы и смотрим, чтобы каждой открывающей скобке соответствовала закрывающая фигурная скобка
Вернуться к содержанию круса си 
Поделиться