You are on page 1of 6

Вовед во програмирање 2010

Задачи 8

1. Пример за печатење на текстуална низа (стринг).

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])


{
char zbor[]="FON Univerzitet";
printf("%s\n",zbor);

system("PAUSE");
return 0;
}

2. Функција која што ќе ја пресметува должината на една текстуална низа (стринг).

#include <stdio.h>
#include <stdlib.h>
int dolzina(char[]);
int main(int argc, char *argv[])
{
char a[]="FON Univerzitet";
printf("%d\n",dolzina(a));
system("PAUSE");
return 0;
}
int dolzina(char zbor[]){
int dol=0;
while (zbor[dol]!='\0'){
dol++;
}
return dol;
}

3. Функција која ќе изброи колку пати еден знак се појавува во дадена текстуална низа.

#include <stdio.h>
#include <stdlib.h>
int izbroj(char[],char);
int main(int argc, char *argv[])
{
char a[]="FON Univerzitet";
char b='e';
printf("Bukvata %c se naoga %d pati vo
%s\n",b,izbroj(a,b),a);
system("PAUSE");
return 0;
}
int izbroj(char zbor[],char bukva){
int i=0,br=0;
while (zbor[i]!='\0'){
if (zbor[i]==bukva){
br++;
}
i++;
}
return br;
}

4. Функција која што ќе изброи колку самогласки има во еден збор.

#include <stdio.h>
#include <stdlib.h>
int izbroj(char[]);
int main(int argc, char *argv[])
{

char a[]="FON Univerzitet";

printf("vo %s ima %d samoglaski\n",a,izbroj(a));


system("PAUSE");
return 0;
}
int izbroj(char zbor[]){
int i=0,br=0;
while (zbor[i]!='\0'){
if (zbor[i]=='a'||
zbor[i]=='e'||
zbor[i]=='i'||
zbor[i]=='o'||
zbor[i]=='u'||
zbor[i]=='A'||
zbor[i]=='E'||
zbor[i]=='I'||
zbor[i]=='O'||
zbor[i]=='U'){
br++;
}
i++;
}
return br;
}

5. Функција која во даден збор малите букви ги конвертира во големи, големите во


мали, а цифрите ги заменува со празно место.

#include <stdio.h>
#include <stdlib.h>
void izmeni (char[],char[]);
int main(int argc, char *argv[])
{

char a[]="fon123uNIVERZITET";
char b[20];
izmeni(a,b);
printf("%s",b);

system("PAUSE");
return 0;
}
void izmeni(char izvor[], char cel[]){
int i=0;
while(izvor[i]!='\0'){
if(izvor[i]>=97&&izvor[i]<=122){
cel[i]=izvor[i]+('A'-'a');
}
else if (izvor[i]>=65&&izvor[i]<=90){
cel[i]=izvor[i]+('a'-'A');
}
else if (izvor[i]>=48&&izvor[i]<=57){
cel[i]=' ';
}
else{
cel[i]=izvor[i];
}
i++;
}
cel[i+1]='\0';
}

6. Функција која спојува два стринга во еден нов.

#include <stdio.h>
#include <stdlib.h>
void povrzi(char[],char[], char[]);
int main(int argc, char *argv[])
{

char a[]="FON";
char b[]=" Univerzitet";
char c[20];
povrzi(a,b,c);
printf("%s\n",c);

system("PAUSE");
return 0;
}
void povrzi(char izvor[],char izvor1[], char cel[]){
int i=0;
int k=0;
while(izvor[i]!='\0'){
cel[i]=izvor[i];
i++;
}
while (izvor1[k]!='\0'){
cel[i+k]=izvor1[k];
k++;
}
cel[i+k]='\0';
}

7. Да се креира дводимензионална низа 4х4, вредностите да се прочитаат преку


тастатура и да се испечатат во форма на матрица.

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])


{
int i,j;
int a[i][j];
for (i=0;i<4;i++){
for (j=0;j<4;j++){
scanf("%d",&a[i][j]);
}
}
for (i=0;i<4;i++){
printf("\n\t");
for (j=0;j<4;j++){
printf("%d\t",a[i][j]);
}
}

system("PAUSE");
return 0;
}

8. Програма што го пресметува збирот на елементите по редици и колони од матрица


3х3 (резултатите да се зачуваат во низи).

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int niza[3][3];
int zbir[3]={0,0,0};
int zbirk[3]={0,0,0};
int i;
int j;

for(i=0;i<3;i++){
for(j=0;j<3;j++){
scanf("%d",&niza[i][j]);
}
}
for(i=0;i<3;i++){
printf("\n");
for(j=0;j<3;j++){
printf("%d\t",niza[i][j]);
}

}
printf("\n");
for(i=0;i<3;i++){
for(j=0;j<3;j++){
zbir[i]+=niza[i][j];
}
printf("ZBIR REDICA[%d]=%d\n",i,zbir[i]);
}

for(i=0;i<3;i++){
for(j=0;j<3;j++){
zbirk[i]+=niza[j][i];
}
printf("ZBIR KOLONA[%d]=%d\n",i,zbirk[i]);
}

system("PAUSE");
return 0;
}

9. Програма која креира дводимензионална низа со број на редови и колони по избор


на корисникот (најмногу 10), ги чита сите вредности преку тастатура и пресметува
збир на сите елементи.

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int matrica[10][10];
int m;
int n;
int i,j;
int suma=0;

printf("Vnesi broj na redici \n");


scanf("%d",&m);
printf("Vnesi broj na koloni \n");
scanf("%d",&n);

for(i=0;i<m;i++){
for(j=0;j<n;j++){
scanf("%d",&matrica[i][j]);
}
}
for(i=0;i<m;i++){
for(j=0;j<n;j++){
suma=suma+matrica[i][j];
}
}
printf("%d",suma);

system("PAUSE");
return 0;
}

10. Програма во која се креира матрица со број на редови и колони по избор на


корисникот (најмногу 100), ја печати матрицата и нејзината транспонирана верзија.
*Транспонирана матрица е онаа во која редовите се запишани како колони а
колоните како редови.

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i,j,n,a[100][100],b[100][100];
printf("n=");
scanf("%d",&n);
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("a[%d][%d]=",i,j);
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
b[i][j]=a[j][i];
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("%d\t",a[i][j]);
}
printf("\n");
}
printf("------TRANSPONIRANA------\n");
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("%d\t",b[i][j]);
}
printf("\n");
}
system("PAUSE");
return 0;
}

You might also like