Си тіліндегі қатарлармен жұмысқа арналған функциялар
stdio.h кітапханасы мынадай функцияларды қамтиды:
int getchar()- кілтжиыннан енгізілген символдың мәнін қайтарады. Мысалы:
printf("%d", getchar());
char *gets (char *s)
бұл функция қолданушыдан қатарды енгізуді сұрайды, сонан соң ол қатарды s массивіне қояды ( қолданушы 'Enter' пернесін баспайынша):
char str[7] = "";
gets(str) ;
int putchar (int c)
'c' коды бар символды баспаға шығарады:
putchar(97); // а символын шығарады
int puts (char *s)
s қатарын басып, курсорды жаңа жолға көшіреді:
char str[7] = "sergey";
puts(str);
int sprintf (char *s, char *format, ...)
printf функциясына ұқсас, тек деректерді s массивіне жазады:
char str[37] = "";
printf (str,"chislo:%d, month: %s",10,"desember");
//массивте болады: chislo:10, month: desember
int sscanf (char *s, char *format, ...)
мән кілтжиыннан емес, s массивінен енгізіледі:
char str[37]="sergey",
s[100]="";
sscanf (str,"%s", s);
string.h
string.h. кітапханасының функциялары:
char *strcpy (char *srt1, char str2) - str2 қатарын str1 қатарына көшіру, нітижесі str1 қатар
char str[37] = "sergey", s[100]="monk";
strcpy(str,s);
char *strncpy (char *srt1, char str2, int n)
Бұл функция алдыңғыға ұқсас, айырмашылығы көшірілетін сөздер санын бақылауға мүмкіндік бар:
char str[37] = "sergey", s[100]="monk";
strncpy(str,s,3);//ответ: mongey
char *strcat (char *srt1, char str2) - str1 қатарын str2 қатарын қосады, нәтижесінде str1 қатарындағы ноль-терминатордың орнына str2 қатары қойылады:
char str[37] = "sergey", s[100]="monk";
strcat(str,s); //Ответ: sergeymonk
char *strncat (char *srt1, char str2, int n)
Бірінші қатарға екінші қатардан n символды қояды
char str[37] = "sergey", s[100]="monk";
strncat(str,s,2);//жауап: sergeymo
Си/С++ стандартты кітапханалары ішінде қатарды өңдеуге арналған функциялар кітапханасы бар. Ол файл – string.h.
Мысалы, // Символдарды жұлдызшаларға айналдыру.
#include <stdio.h>
# include <conio.h>
void main ()
{char S []=”fh5j”;
Int i=0;
clrscr ();
puts (s);
while (s [i])
{s[i++]=’*’; puts (s);}
prints (“\n қатар ұзындығы =4,i);
}.
программа нәтижесінде экранға шығады:
fh 5j
*h5j
**5j
***j
**** қатар ұзындығы =4.
Бұл программада S[i] нөлдік символды алғанға дейін цикл қайталана береді.
Мысал. Символдық қатар енгізу. Осы қатарды аударып (теріс) көрсету. Мысалы, “abcdef” қатары енгізілсе, нәтижесінде “fedcba” қатары алыну керек:
//қатарды кері жазу
#include <stdio.h>
#inckude <string.h>
#include <conio.h>
void main ()
{ char c, s[10];
int i;
clrscr ();
printf (“қатарды енгіз”);
gets (s);
for (i=0; i<=(strlen(s)-1)/2; i++)
{c=s[i]; s[i]=s[strlen (s)-i-1];
s[strlen (s)-i-1]=c;}
printf (“\n аударылған қатар:”);
puts (s);
}.
Негізгі әдебиет: 6 [286-294, 414-415], 7[88-97]
Қосымша әдебиет: 18 [141-150], 19 [30-32]
Дата добавления: 2015-09-11; просмотров: 2554;