Изтеглете PDF
1) Как се конструира оператор за инкремент или декремент в C?
Всъщност има два начина да направите това. Единият е да се използва оператор на инкремент ++ и оператор на декремент -. Например изразът "x ++" означава да се увеличи стойността на x с 1. По същия начин изразът "x -" означава да се намали стойността на x с 1. Друг начин за писане на изрази за увеличаване е да се използва конвенционалният + плюс знак или - знак минус. В случая на "x ++", друг начин за записването му е "x = x +1".
2) Каква е разликата между Call by Value и Call by Reference?
Когато използвате Call by Value, изпращате стойността на променлива като параметър към функция, докато Call by Reference изпраща адреса на променливата. Също така, при Call by Value, стойността в параметъра не се влияе от каквато и да е операция, която се извършва, докато в случай на Call by Reference стойностите могат да бъдат засегнати от процеса във функцията.
3) Някои кодери отстраняват грешки в своите програми, като поставят символи за коментари върху някои кодове, вместо да ги изтриват. Как това помага при отстраняване на грешки?
Поставянето на символи за коментари / * * / около код, наричан още "коментиране", е начин за изолиране на някои кодове, които според вас могат да причинят грешки в програмата, без да изтривате кода. Идеята е, че ако кодът всъщност е правилен, просто премахнете символите за коментар и продължете. Освен това ви спестява време и усилия за необходимостта да пренаписвате кодовете, ако първо сте го изтрили.
4) Какъв е еквивалентният код на следващото изявление във формат WHILE LOOP?
for (a=1; a<=100; a++)printf ("%d\n", a * a);
Отговор:
a=1;while (a<=100) {printf ("%d\n", a * a);a++;}
5) Какво е стек?
Стекът е една форма на структура от данни. Данните се съхраняват в стекове, използвайки подхода FILO (First In Last Out). Във всеки конкретен случай е достъпен само горната част на стека, което означава, че за да се извлекат данни, които се съхраняват вътре в стека, първо трябва да се извлекат тези в горната част. Съхранението на данни в стека също се нарича PUSH, докато извличането на данни се нарича POP.
6) Какво е файл с последователен достъп?
Когато пишете програми, които ще съхраняват и извличат данни във файл, е възможно да го обозначите в различни форми. Файлът за последователен достъп е такъв, че данните се записват в последователен ред: една информация се поставя във файла след друга. За достъп до определени данни в рамките на файла за последователен достъп, данните трябва да се четат по една, докато се достигне правилната.
7) Какво е инициализация на променлива и защо е важна?
Това се отнася до процеса, при който на променлива се присвоява начална стойност, преди да се използва в програмата. Без инициализация променлива би имала неизвестна стойност, което може да доведе до непредсказуеми изходи, когато се използва при изчисления или други операции.
8 Какво представлява програмирането на спагети?
Програмирането на спагети се отнася до кодове, които обикновено се заплитат и припокриват в цялата програма. Този неструктуриран подход към кодирането обикновено се дължи на липсата на опит от страна на програмиста. Програмирането на спагети прави програмата сложна и анализът на кодовете труден и затова трябва да се избягва колкото е възможно повече.
9) Разграничаване на изходните кодове от обектните кодове
Изходните кодове са кодове, написани от програмиста. Състои се от командите и други подобни на английски ключови думи, които трябва да инструктират компютъра какво да прави. Компютрите обаче не биха могли да разберат изходните кодове. Следователно изходните кодове се компилират с помощта на компилатор. Получените резултати са обектни кодове, които са във формат, разбираем за компютърния процесор. При програмирането на C изходните кодове се записват с разширението на файла .C, докато обектните кодове се запазват с разширението на файла .OBJ
10) При програмирането на C, как вмъквате кавички ('и ") в изходния екран?
Това е често срещан проблем за начинаещи, защото кавичките обикновено са част от изявление на printf. За да вмъкнете знака за кавички като част от изхода, използвайте спецификаторите на формат \ '(за единична кавичка) и \ "(за двойна кавичка).
11) Каква е ползата от знак \ \ 0?
Той е посочен като завършващ нулев символ и се използва предимно за показване на края на стойност на низ.
12) Каква е разликата между символа = и символа ==?
Символът = често се използва при математически операции. Използва се за присвояване на стойност на дадена променлива. От друга страна, символът ==, известен също като "равен на" или "еквивалентен на", е релационен оператор, който се използва за сравняване на две стойности.
13) Какво представлява модулният оператор?
Операторът на модула извежда остатъка от деление. Той използва символа за процент (%). Например: 10% 3 = 1, което означава, че когато разделите 10 на 3, остатъкът е 1.
14) Какво е вложен цикъл?
Вложен цикъл е цикъл, който работи в друг цикъл. Казано в друг смисъл, имате вътрешен контур, който е вътре във външен контур. В този сценарий вътрешният цикъл се изпълнява няколко пъти, както е посочено от външния цикъл. За всяко включване на външния контур първо се изпълнява вътрешният контур.
15) Кой от следните оператори е неправилен и защо? (> =, <=, <>, ==)
<> е неправилно. Въпреки че този оператор е правилно интерпретиран като „не е равен на“ при писане на условни изрази, той не е правилният оператор, който да се използва в програмирането на C Вместо това трябва да се използва операторът! =, За да се посочи условието "не е равно на".
16) Сравнете и сравнете компилаторите от интерпретатори.
Компилаторите и интерпретаторите често се занимават с това как се изпълняват програмните кодове. Тълкувателите изпълняват програмни кодове един по ред, докато компилаторите приемат програмата като цяло и я преобразуват в обектен код, преди да я изпълнят. Ключовата разлика тук е, че в случай на интерпретатори, програмата може да срещне синтаксични грешки в средата на изпълнение и ще спре оттам. От друга страна, компилаторите проверяват синтаксиса на цялата програма и ще продължат към изпълнение само когато не са открити синтаксисни грешки.
17) Как декларирате променлива, която ще съдържа низови стойности?
Ключовата дума char може да съдържа само 1 символна стойност наведнъж. Чрез създаването на масив от символи можете да съхранявате низови стойности в него. Пример: "char MyName [50];" декларира низова променлива на име MyName, която може да съдържа максимум 50 знака.
18) Могат ли къдравите скоби {} да се използват за затваряне на един ред код?
Докато къдравите скоби се използват главно за групиране на няколко реда кодове, той все пак ще работи без грешка, ако сте го използвали за един ред. Някои програмисти предпочитат този метод като начин за организиране на кодове, за да изглежда по-ясно, особено в условни изявления.
19) Какво представляват заглавните файлове и за какво се ползват при програмиране на C?
Заглавните файлове са известни още като библиотечни файлове. Те съдържат две основни неща: дефинициите и прототипите на функциите, използвани в дадена програма. Най-просто казано, командите, които използвате в програмирането на C, всъщност са функции, които се дефинират във всеки заглавен файл. Всеки заглавен файл съдържа набор от функции. Например: stdio.h е заглавен файл, който съдържа дефиниция и прототипи на команди като printf и scanf.
20) Какво е синтаксична грешка?
Синтаксисните грешки са свързани с грешки при използването на програмен език. Може би команда, която е била грешно написана или команда, която трябва да е въведена в режим с малки букви, но вместо това е въведена с главни букви. Погрешно поставен символ или липса на символ някъде в реда на кода също може да доведе до синтаксична грешка.
21) Какво представляват променливите и по какъв начин се различава от константите?
Първоначално променливите и константите могат да изглеждат сходни в смисъл, че и двете са идентификатори, съставени от един или повече знаци (букви, цифри и няколко допустими символа). И двете ще имат определена стойност. Стойностите, държани от променлива, могат да бъдат променяни в цялата програма и могат да бъдат използвани в повечето операции и изчисления. Константите получават стойности само наведнъж, поставени в началото на програмата. Тази стойност не се променя в програмата. Например можете да присвоите константа с име PI и да й придадете стойност 3.1415. След това можете да го използвате като PI в програмата, вместо да се налага да пишете 3.1415 всеки път, когато имате нужда от него.
22) Как получавате достъп до стойностите в масив?
Масивите съдържат редица елементи, в зависимост от размера, който сте му дали по време на декларирането на променлива. На всеки елемент се присвоява число от 0 до брой елементи-1. За да присвоите или извлечете стойността на определен елемент, вижте номера на елемента. Например: ако имате декларация, която казва „intscores [5];“, тогава имате 5 достъпни елемента, а именно: резултати [0], оценки [1], оценки [2], оценки [3] и резултати [4] ].
23) Мога ли да използвам тип данни "int" за съхраняване на стойността 32768? Защо?
Не. Типът данни "int" може да съхранява стойности от -32768 до 32767. За да съхраните 32768, можете вместо това да използвате "long int". Можете също да използвате "unsigned int", ако приемете, че не възнамерявате да съхранявате отрицателни стойности.
24) Могат ли два или повече оператора като \ n и \ t да се комбинират в един ред програмен код?
Да, напълно валидно е да се комбинират оператори, особено ако възникне необходимост. Например: можете да имате код като "printf (" Hello \ n \ n \ 'World \' ")", за да изведете текста "Hello" на първия ред и "World", заграден в единични кавички, за да се появи на следващия два реда.
25) Защо не всички заглавни файлове са декларирани във всяка програма на C?
Изборът за деклариране на заглавен файл в горната част на всяка програма C ще зависи от това какви команди / функции ще използвате в тази програма. Тъй като всеки заглавен файл съдържа различни дефиниции на функции и прототип, вие ще използвате само онези заглавни файлове, които ще съдържат функциите, които ще ви трябват. Декларирането на всички заглавни файлове във всяка програма само би увеличило общия размер на файла и натоварването на програмата и не се счита за добър стил на програмиране.
26) Кога ключовата дума „void“ се използва във функция?
Когато декларирате функции, вие ще решите дали тази функция ще връща стойност или не. Ако тази функция няма да върне стойност, например когато целта на функцията е да покаже някои изходи на екрана, тогава "void" трябва да се постави в най-лявата част на заглавката на функцията. Когато се очаква възвръщаема стойност след изпълнението на функцията, типът на връщаната стойност се поставя вместо "void".
27) Какво представляват съставните твърдения?
Съставените инструкции се състоят от две или повече програмни инструкции, които се изпълняват заедно. Това обикновено се случва, докато се обработват условия, при които се изпълняват поредица от изрази, когато се оценява TRUE или FALSE. Съставените изрази могат също да бъдат изпълнени в рамките на цикъл. Къдравите скоби {} се поставят преди и след сложни изявления.
28) Какво е значението на алгоритъма за програмиране на C?
Преди да може да се напише програма, първо трябва да се създаде алгоритъм. Алгоритъмът предоставя стъпка по стъпка процедура за това как може да се получи решение. Той също така действа като план за начина, по който програмата ще започне и завърши, включително какъв процес и изчисления са включени.
29) Какво е предимството на масив пред отделни променливи?
Когато съхранявате множество свързани данни, е добре да използвате масиви. Това е така, защото масивите се именуват, като се използва само 1 дума, последвана от номер на елемент. Например: за да съхраните 10-те резултата от теста на 1 ученик, можете да използвате 10 различни имена на променливи (grade1, grade2, grade3 ... grade10). При масивите се използва само 1 име, останалите са достъпни чрез името на индекса (оценка [0], оценка [1], степен [2] ... степен [9]).
30) Напишете цикъл, който ще покаже следния изход:
1
12
123
1234
12345
Отговор:
for (a=1; a<=5; i++) {for (b=1; b<=a; b++)printf("%d",b);printf("\n");}
31) Какво не е наред в това твърдение? scanf ("% d", колко);
Амперсандът и символът трябва да се поставят преди името на променливата whatnumber. Поставянето & означава, че каквато и да е целочислена стойност, въведена от потребителя, се съхранява на "адреса" на името на променливата. Това е често срещана грешка за програмистите, която често води до логически грешки.
32) Как се генерират произволни числа в C?
Случайни числа се генерират в C с помощта на командата rand (). Например: anyNum = rand () ще генерира всяко цяло число, започващо от 0, като се приеме, че anyNum е променлива от тип integer.
33) Какъв може да е проблемът, ако валидно име на функция като tolower () се съобщава от компилатора на C като неопределено?
Най-вероятната причина за тази грешка е, че заглавният файл за тази функция не е посочен в горната част на програмата. Заглавните файлове съдържат дефиницията и прототипа за функции и команди, използвани в програма C. В случай на "tolower ()", кодът "#include
34) Какво представляват коментарите и как да ги вмъкнете в C програма?
Коментарите са чудесен начин да поставите някои забележки или описание в програма. Той може да служи като напомняне за какво става дума в програмата или за описание защо на първо място е бил поставен определен код или функция. Коментарите започват с / * и завършват със * / символи. Коментарите могат да бъдат един ред или дори да обхващат няколко реда. Може да се постави навсякъде в програмата.
35) Какво е отстраняване на грешки?
Отстраняването на грешки е процесът на идентифициране на грешки в рамките на програма. По време на компилирането на програмата, откритите грешки ще спрат изпълнението на програмата напълно. При това състояние програмистът ще разгледа възможните части, където е възникнала грешката. Отстраняването на грешки гарантира премахването на грешки и играе важна роля, за да гарантира, че очакваните резултати от програмата са изпълнени.
36) Какво прави операторът && в програмен код?
&& е посочен и като оператор AND. Когато използвате този оператор, всички посочени условия трябва да са ИСТИНА, преди да може да се извърши следващото действие. Ако имате 10 условия и всички освен 1 не могат да бъдат оценени като TRUE, целият оператор на условие вече се оценява като FALSE
37) При програмирането на C каква команда или код може да се използва, за да се определи дали броят е нечетен или четен?
В C няма нито една команда или функция, които могат да проверят дали числото е нечетно или четно. Това обаче може да се постигне чрез разделяне на това число на 2, след което проверка на остатъка. Ако остатъкът е 0, тогава това число е четно, в противен случай е нечетно. Можете да го напишете в код като:
if (num % 2 == 0)printf("EVEN");elseprintf("ODD");
38) Какво означава формат% 10.2, когато е включен в printf изявление?
Този формат се използва за две неща: за задаване на броя интервали, отредени за изходния номер и за задаване на броя на десетичните знаци. Числото преди десетичната запетая е за разпределеното пространство, в този случай ще даде 10 интервала за изходното число. Ако броят на пространството, заето от изходното число, е по-малко от 10, символите за добавяне на интервал ще бъдат вмъкнати преди действителния изходен номер. Числото след десетичната запетая задава броя на десетичните знаци, в този случай това са 2 десетични интервала.
39) Какво представляват логическите грешки и как се различава от синтаксисните грешки?
Програмата, която съдържа логически грешки, обикновено преминава през процеса на компилация, но полученият резултат може да не е очаквания. Това се случва, когато в кода е вмъкната грешна формула или е извършена грешна последователност от команди. Синтаксисните грешки, от друга страна, се справят с неправилни команди, които са грешно написани или не са разпознати от компилатора.
40) Какви са различните видове контролни структури при програмирането?
В програмирането има 3 основни структури за управление: Последователност, Избор и Повторение. Последователният контрол следва поток отгоре надолу при изпълнение на програма, така че първо се изпълнява стъпка 1, последвана от стъпка 2, чак докато се изпълни последната стъпка. Изборът се занимава с условни изявления, което означава, че кодовете се изпълняват в зависимост от оценката на условията като TRUE или FALSE. Това също означава, че не всички кодове могат да бъдат изпълнени, а вътре има алтернативни потоци. Повторенията са известни също като циклични структури и ще повтарят един или два програмни израза, зададени от брояч.
41) Какво е || оператор и как функционира в програма?
The || е известен също като оператор OR в програмирането на C. При използване || за оценка на логически условия, всяко условие, което оценява на TRUE, ще направи целия оператор на условие като TRUE.
42) Може ли функцията "ако" да се използва при сравняване на низове?
Не. Командата "if" може да се използва само за сравняване на числови стойности и стойности с един знак. За сравняване на низови стойности има друга функция, наречена strcmp, която се занимава специално със низове.
43) Какво представляват директивите за препроцесор?
Препроцесорните директиви се поставят в началото на всяка програма на C. Тук се посочват библиотечните файлове, които ще зависят от функциите, които трябва да се използват в програмата. Друго използване на директивите на препроцесора е декларирането на константи. Директивите на процесора започват със символа #.
44) Какъв ще бъде резултатът от следния условен израз, ако стойността на променлива s е 10?
s> = 10 && s <25 && s! = 12
Резултатът ще бъде ИСТИНСКИ. Тъй като стойността на s е 10, s> = 10 изчислява на TRUE, тъй като s не е по-голямо от 10, но все пак е равно на 10. s <25 също е TRUE, тъй като 10 е по-малко от 25. Същото е, s! = 12 , което означава, че s не е равно на 12, оценява на TRUE. && е операторът AND и следва правилото, че ако всички индивидуални условия са TRUE, целият оператор е TRUE.
45) Опишете реда за приоритет по отношение на операторите в C.
Редът на приоритет определя коя операция трябва първо да се извърши в оператор или условен оператор. На най-високото ниво на приоритет са унарните оператори!, +, - и &. Следват го редовните математически оператори (*, / и модул% първо, последвани от + и -). Следващи по ред са релационните оператори <, <=,> = и>. След това следват двата оператора за равенство == и! =. Логическите оператори && и || след това се оценяват. На последното ниво е операторът за присвояване =.
46) Какво не е наред с това твърдение? myName = "Робин";
Не можете да използвате знака =, за да присвоявате стойности на променлива в низ. Вместо това използвайте функцията strcpy. Правилното твърдение би било: strcpy (myName, "Robin");
47) Как определяте дължината на стойност на низ, която се съхранява в променлива?
За да получите дължината на стойност на низ, използвайте функцията strlen (). Например, ако имате променлива с име FullName, можете да получите дължината на съхранената стойност на низа, като използвате този израз: I = strlen (FullName); променливата Сега ще имам дължината на символа на стойността на низа.
48) Възможно ли е да се инициализира променлива в момента, в който е декларирана ?
Да, не е нужно да пишете отделен оператор за присвояване след декларацията на променливата, освен ако не планирате да го промените по-късно. Например: char planet [15] = "Земя"; прави две неща: декларира низова променлива с име planet, след което я инициализира със стойността "Земя".
49) Защо езикът С се счита за език на средно ниво?
Това е така, защото езикът C е богат на функции, които го карат да се държи като език на високо ниво, като в същото време може да взаимодейства с хардуер, използвайки методи на ниско ниво. Използването на добре структуриран подход към програмирането, съчетан с английски думи, използвани във функциите, го прави да действа като език на високо ниво. От друга страна, C може директно да осъществява достъп до структури на паметта, подобни на рутинните асемблерни езици.
50) Какви са различните разширения на файлове, включени при програмиране на C?
Изходните кодове в C се запазват с разширение .C файл. Заглавните файлове или библиотечните файлове имат разширение .H файл. Всеки път, когато изходният код на програмата се компилира успешно, той създава обектен файл .OBJ и изпълним .EXE файл.
51) Какво представляват запазените думи?
Запазените думи са думи, които са част от стандартната езикова библиотека на C. Това означава, че запазените думи имат специално значение и следователно не могат да се използват за цели, различни от първоначално предназначените. Примери за запазени думи са int, void и return.
52) Какви са свързаните списъци?
Свързаният списък се състои от възли, които са свързани с друг. При програмирането на C, свързани списъци се създават с помощта на указатели. Използването на свързани списъци е един ефективен начин за използване на паметта за съхранение.
53) Какво е FIFO?
При програмирането на C има структура от данни, известна като опашка. В тази структура данните се съхраняват и имат достъп до тях с помощта на FIFO формат или First-In-First-Out. Опашката представлява ред, в който първите съхранени данни ще бъдат и първите, които също са достъпни.
54) Какво представляват двоичните дървета?
Бинарните дървета всъщност са продължение на концепцията за свързани списъци. Двоичното дърво има два указателя, ляв и десен. Всяка страна може допълнително да се разклонява, за да формира допълнителни възли, като всеки възел има и два указателя.
55) Не всички запазени думи са написани с малки букви. Истина или лъжа?
НЕВЯРНО. Всички запазени думи трябва да бъдат написани с малки букви; в противен случай компилаторът C би тълкувал това като неидентифицирано и невалидно.
56) Каква е разликата между израза "++ a" и "a ++"?
В първия израз увеличението ще се случи първо на променлива a и получената стойност ще бъде тази, която ще се използва. Това е известно и като увеличение на префикса. Във втория израз текущата стойност на променлива a би била тази, която ще се използва в операция, преди да се увеличи стойността на самата. Това е известно още като увеличение на постфикса.
57) Какво би се случило с X в този израз: X + = 15; (ако приемем, че стойността на X е 5)
X + = 15 е кратък метод за запис на X = X + 15, така че ако първоначалната стойност на X е 5, тогава 5 + 15 = 20.
58) На език C променливите NAME, name и Name са еднакви. Истина или лъжа?
НЕВЯРНО. Езикът C е език, чувствителен към регистъра. Следователно, NAME, name и Name са три уникално различни променливи.
59) Какво е безкраен цикъл?
Безкраен цикъл може да означава две неща. Единият е, че е проектиран да се върти непрекъснато, докато не бъде изпълнено условието в цикъла, след което функцията за прекъсване ще накара програмата да излезе от цикъла. Друга идея за безкраен цикъл е, когато е написано неправилно състояние на цикъла, което кара цикъла да работи грешно завинаги. Безкрайните цикли често се наричат безкрайни цикли.
60) Какво представлява диаграмата на програмата и как помага при написването на програма?
Блок-схема осигурява визуално представяне на стъпка по стъпка процедура за решаване на даден проблем. Блок-схемите са направени от символи, като всеки символ е под формата на различни форми. Всяка форма може да представлява определен обект в цялата програмна структура, като процес, състояние или дори фаза вход / изход.
61) Какво не е наред с това програмно изявление? празно = 10;
Думата void е запазена дума на C език. Не можете да използвате запазени думи като дефинирана от потребителя променлива.
62) Валидна ли е тази програма? INT = 10,50;
Ако приемем, че INT е променлива от тип float, това твърдение е валидно. Някой може да мисли, че INT е запазена дума и не трябва да се използва за други цели. Спомнете си обаче, че запазените думи са изразени с малки букви, така че компилаторът C няма да тълкува това като запазена дума.
63) Кои са действителните аргументи?
Когато създавате и използвате функции, които трябва да извършат действие върху някои дадени стойности, трябва да предадете тези зададени стойности на тази функция. Стойностите, които се предават в извиканата функция, са посочени като действителни аргументи.
64) Какво представлява нова последователност за бягство?
Евакуационната последователност на нов ред е представена от символа \ n. Това се използва за вмъкване на нов ред при показване на данни в изходния екран. Повече интервали могат да бъдат добавени чрез вмъкване на повече \ n символи. Например \ n \ n ще вмъкне две интервали. Екранна последователност на нов ред може да бъде поставена преди действителния изходен израз или след.
65) Какво е пренасочване на изхода?
Това е процесът на прехвърляне на данни към алтернативен изходен източник, различен от екрана на дисплея. Пренасочването на изхода позволява на програмата да запази изхода си във файл. Например, ако имате програма на име КОМПЮТЪР, като въведете това в командния ред като КОМПЮТЪР> ДАННИ може да приеме вход от потребителя, да извърши определени изчисления, след това изходът да бъде пренасочен към файл с име ДАННИ, вместо да го показва на екрана .
66) Какво представляват грешките по време на изпълнение?
Това са грешки, които възникват, докато програмата се изпълнява. Един често срещан случай, при който могат да се случат грешки по време на изпълнение, е когато се опитвате да разделите число на нула. Когато възникнат грешки по време на изпълнение, изпълнението на програмата ще спре, показвайки кой програмен ред е причинил грешката.
67) Каква е разликата между функциите abs () и fabs ()?
Тези 2 функции основно извършват едно и също действие, което е да се получи абсолютната стойност на дадената стойност. Abs () се използва за целочислени стойности, докато fabs () се използва за числа с плаващ тип. Също така прототипът за abs () е под
68) Какви са формалните параметри?
При използване на функции в програма C формалните параметри съдържат стойностите, които са били предадени от извикващата функция. Стойностите се заместват в тези формални параметри и се използват при каквито и да е операции, както е посочено в основното тяло на извиканата функция.
69) Какво представляват контролните структури?
Контролните структури поемат отговорност за това кои инструкции трябва да се изпълняват в дадена програма. Това означава, че програмният поток не е задължително да се премести от един оператор в следващия, а по-скоро може да се наложи някои алтернативни части да бъдат преминати или заобиколени, в зависимост от резултата от условните инструкции.
70) Напишете прост кодов фрагмент, който ще провери дали числото е положително или отрицателно .
If (num>=0)printf("number is positive");elseprintf ("number is negative");
71) Кога операторът "switch" е за предпочитане пред израза "if"?
Операторът за превключване се използва най-добре, когато се занимавате със селекции, базирани на една променлива или израз. Операторите за превключване обаче могат да оценяват само целочислени и символни типове данни.
72) Какво представляват глобалните променливи и как ги декларирате?
Глобалните променливи са променливи, които могат да бъдат достъпни и манипулирани навсякъде в програмата. За да направите глобална променлива, поставете декларацията на променливата в горната част на програмата, непосредствено след раздела за директиви на препроцесора.
73) Кои са изброените типове?
Изброените типове позволяват на програмиста да използва по-значими думи като стойности на променлива. Всеки елемент в променливата на изброения тип всъщност е свързан с цифров код. Например, може да се създаде изброена променлива тип, наречена ДНИ, чиито стойности са понеделник, вторник ... неделя.
74) Какво прави функцията toupper ()?
Използва се за преобразуване на всяка буква в режим с главни букви. Прототипът на функцията Toupper () е деклариран в
75) Възможно ли е да има функция като параметър в друга функция?
Да, това е позволено в програмирането на C. Просто трябва да включите целия прототип на функцията в полето на параметъра на другата функция, където трябва да се използва.
76) Какво представляват многомерните масиви?
Многомерните масиви могат да съхраняват данни в двумерна или повече размерна структура. Например можете да използвате двуизмерен масив, за да съхраните текущата позиция на фигурите в шахматна игра или позицията на играчите в програма за тик-так.
77) Коя функция в C може да се използва за добавяне на низ към друг низ?
Функцията strcat. Необходими са два параметъра, изходният низ и стойността на низа, които да бъдат добавени към изходния низ.
78) Каква е разликата между функциите getch () и getche ()?
И двете функции ще приемат въведена от потребителя стойност на символа. Когато използвате getch (), натиснатият клавиш няма да се появи на екрана и автоматично се улавя и присвоява на променлива. Когато използвате getche (), клавишът, който е бил натиснат от потребителя, ще се появи на екрана, като в същото време бъде присвоен на променлива.
79) Тези две програмни инструкции изпълняват ли еднакви резултати? 1) scanf ("% c", & писмо); 2) писмо = getchar ()
Да, и двамата правят абсолютно едно и също нещо, което е да приеме следващия бутон, натиснат от потребителя, и да го присвои на променлива с име буквата.
80) Какви са типовете структури в C?
Типовете структури се използват предимно за съхраняване на записи. Записът се състои от свързани полета. Това улеснява организирането на група свързани данни.
81) Какво означават символите "r" и "w" при писане на програми, които ще използват файлове?
"r" означава "четене" и ще отвори файл като вход, в който трябва да бъдат извлечени данни. "w" означава "запис" и ще отвори файл за извеждане. Предишните данни, съхранени в този файл, ще бъдат изтрити.
82) Каква е разликата между текстови файлове и двоични файлове?
Текстовите файлове съдържат данни, които лесно могат да бъдат разбрани от хората. Включва букви, цифри и други знаци. От друга страна, двоичните файлове съдържат 1s и 0s, които само компютрите могат да интерпретират.
83) възможно ли е да създадете свои собствени заглавни файлове?
Да, възможно е да се създаде персонализиран заглавен файл. Просто включете в него прототипите на функциите, които искате да използвате във вашата програма, и използвайте директивата #include, последвана от името на вашия заглавен файл.
84) Какво представлява динамичната структура на данните?
Динамичната структура на данните осигурява средство за по-ефективно съхранение на данни в паметта. Използвайки динамично разпределение на паметта, вашата програма ще има достъп до пространствата на паметта, ако е необходимо. Това е за разлика от статичната структура на данните, при която програмистът трябва да посочи фиксиран брой място в паметта, което да се използва в програмата.
85) Какви са различните типове данни в C?
Основните типове данни са int, char и float. Int се използва за деклариране на променливи, които ще съхраняват цели числа. Float се използва за съхраняване на реални числа. Char може да съхранява отделни стойности на символи.
86) Каква е общата форма на програма C?
Програмата за променлив ток започва с директивите на препроцесора, в които програмистът ще посочи кой заглавен файл и какви константи (ако има такива) да бъдат използвани. Следва заглавието на основната функция. В рамките на основната функция се намира декларацията на променливата и инструкцията на програмата.
87) Какво е предимството на файл с произволен достъп?
Ако количеството данни, съхранявани във файл, е доста голямо, използването на произволен достъп ще ви позволи да търсите в него по-бързо. Ако това беше файл с последователен достъп, ще трябва да преминете през един запис наведнъж, докато достигнете целевите данни. Файл с произволен достъп ви позволява да преминете директно към целевия адрес, където се намират данните.
88) В оператор за превключване какво ще се случи, ако операторът за прекъсване бъде пропуснат?
Ако изявлението за прекъсване не е поставено в края на част от конкретния случай? Той ще премине към следващата част от случая, вероятно причинявайки неправилен изход.
89) Опишете как масивите могат да се предават на дефинирана от потребителя функция
Едно нещо, което трябва да се отбележи е, че не можете да предадете целия масив на функция. Вместо това му подавате указател, който ще сочи към първия елемент на масива в паметта. За да направите това, посочвате името на масива без скобите.
90) Какво представляват указателите?
Указателите сочат към определени области в паметта. Указателите съдържат адреса на променлива, който от своя страна може да съдържа стойност или дори адрес към друга памет.
91) Можете ли да предадете цяла структура на функции?
Да, възможно е да се предаде цяла структура на функция в стил на извикване по метод. Някои програмисти обаче предпочитат да декларират структурата глобално, след което предават променлива от този тип структура на функция. Този метод помага да се поддържа последователност и еднородност по отношение на типа аргументи.
92) Какво представлява функцията gets ()?
Функцията gets () позволява пълно въвеждане на данни от потребителя. Когато потребителят натисне клавиша enter, за да прекрати въвеждането, целият ред символи се съхранява в променлива на низ. Обърнете внимание, че клавишът enter не е включен в променливата, но вместо това след последния знак се поставя нулев терминатор \ 0.
93) Символът% има специална употреба в оператора printf. Как бихте поставили този герой като част от изхода на екрана?
Можете да направите това, като използвате %% в изявлението printf. Например можете да напишете printf ("10 %%"), за да се получи изходът на екрана като 10%.
94) Как търсите данни във файл с данни чрез метод на произволен достъп?
Използвайте функцията fseek (), за да извършите произволен вход / изход на файл. След отварянето на файла от функцията fopen (), fseek ще изисква три параметъра да работят: файлов указател към файла, броя на байтовете за търсене и точката на произход във файла.
95) Включени ли са коментари по време на етапа на компилиране и поставени ли са и във файла EXE?
Не, коментарите, срещнати от компилатора, се пренебрегват. Коментарите са предимно само за насоки на програмиста и нямат друга значителна употреба във функционалността на програмата.
96) Има ли вградена функция в C, която може да се използва за сортиране на данни?
Да, използвайте функцията qsort (). Също така е възможно да се създадат дефинирани от потребителя функции за сортиране, като например тези, базирани на алгоритъма за сортиране на балони и балончета.
97) Какви са предимствата и недостатъците на купчина?
Съхранението на данни в купчината е по-бавно, отколкото би било необходимо при използването на стека. Основното предимство на използването на купчината обаче е нейната гъвкавост. Това е така, защото паметта в тази структура може да бъде разпределена и премахната в произволен ред. Бавността в купчината може да бъде компенсирана, ако алгоритъмът е добре проектиран и внедрен.
98) Как да конвертирате низове в числа в C?
Можете да напишете собствени функции, за да направите преобразуване на низове в число, или вместо това да използвате вградените функции на C. Можете да използвате atof за преобразуване в стойност с плаваща запетая, atoi за преобразуване в цяло число и atol за преобразуване в дълго число.
99) Създайте прост кодов фрагмент, който ще замени стойностите на две променливи num1 и num2.
int temp;temp = num1;num1 = num2;num2 = temp;
100) Каква е ползата от точка и запетая (;) в края на всеки програмен оператор?
Това е свързано с процеса на синтактичен анализ и компилация на кода. Точка и запетая действа като разделител, така че компилаторът да знае къде завършва всеки оператор и може да продължи да разделя израза на по-малки елементи за проверка на синтаксиса.