Лабораторная работа № 18
№ 37 стр. 24 Написать программу проверки, есть ли во введенном с клавиатуры массиве элементы с одинаковым значением. Наэкранвывестизначенияэлементовиихколичество.
#include <stdio.h> for (intjj = 0; jj<array_size; jj++) } } } } void main () for (inti = 0; i<array_size; i++) for(inti = 0; i<array_size; i++) counting (mass, array_size); }
№ 36 стр.24 Написать программу вычисления, сколько раз введенное с клавиатуры число встречается в массиве. Массивзаполняетсяпользователемсклавиатуры. Результатвывестинаэкран.
#include <stdio.h> } void main () int mass[N][N], array_size, count = 0, number; for (inti = 0; i<array_size; i++) for(inti = 0; i<array_size; i++) }
(4б) Написать программу нахождения количества строк и столбцов заданной матрицы, состоящих лишь из ненулевых элементов. Массив заполняется пользователем с клавиатуры. Результат вывести на экран. #include <iostream> void main(void) # define N 3 { setlocale (LC_ALL, "Russian"); int a[N][N], *ua=&a[0][0]; int i, j, stb=0, str=0;
for (i=0; i<N; i++) { for (j=0; j<N; j++,ua++) {printf ("Введите элемент a[%d][%d]: ", i, j); scanf ("%d", ua); printf ("\n (%d:%d) %p\n", i, j, ua); }} for (i=0; i<N; i++) {for (j=0; j<N; j++) { if (*(*(a+i)+j)==0) { str=str+1;
break;}} } for (i=0; i<N; i++) { for (j=0; j<N; j++) { if (*(*(a+j)+i)==0) { stb=stb+1; break; }}} printf ("%d строк и %d столбцов, где нету нулей \n", (N-str), (N-stb)); }
Лабораторная работа № 6 (4б) Написать программу вычисления, сколько раз введенное с клавиатуры число встречается в массиве. Массив заполняется пользователем с клавиатуры. Результат вывести на экран. #include<iostream> using namespace std; int main() #define N 30 { setlocale(LC_ALL, "Russian"); int mas[N], i, sum=0, *ua, num1, k=0,n; printf("Введите размер"); scanf("%d", &num1); ua=&mas[0]; printf ("Введите элемент\n"); scanf("%d",&n); for (i=0; i<num1; i++) { printf ("Введите элемент mas[%d] \n", i); scanf ("%d", ua); printf("\n %d %p",*ua,ua); if (*ua==n) {k++; ua++; }} printf ("\nКоличество %d = %d\n",n, k); }
Лабораторная работа №9
Ввести строку в функции main. Написать функцию, в которой подсчитывалось количество введенных символов. Результат вывести на экран. #include<iostream> #include<string.h> #include<locale> void kol(char A[], char *p[]) { int k=0; char *pm; pm=A; for(int i=0; i<25; i++) { p[i]=pm; pm++; } pm=A; for(int i=0; *p[i]!='\0'; i++) k++; printf("Количество символов=%d\n",k); } void main() { char A[25]; char *p[25]; setlocale (LC_ALL, "Rus"); gets(A); puts(A); kol(A,p); }
Лабораторная № 23
1. Написать функцию, в которой внутри будет переменная (static), сохраняющая количество раз, сколько была вызвана функция за время выполнения программы. #include <iostream> using namespace std; void main(void) {void func (int k); setlocale(LC_ALL,"Russian"); int k, n; printf("Введите количество раз"); scanf("%d",&n); for(k=0;k<n;k++) func(k);} void func (int k) {static int a=0; a++; printf("Функция вызвана %d разa\n",a);} 2. В функции одного исходного файла (1.cpp) объявить ссылку на переменную (extern) другого файла (2.cpp). Умножить ее на переменную, введенную в файле 1.cpp и вывести результат на экран. 1.cpp extern int A=10; 2.cpp #include <iostream> void main() { extern int A; int P=1, B=5; P=A*B;
printf ("P=%d\n",P); } 3.Имеются два файла 1.cpp и 2.cpp. В каждом из файлов ввести с клавиатуры по одной переменной. Вывести на экран переменные другого файла. 1.cpp #include <stdio.h> int A; void main(void) {void Func (int ); int t=0; printf(" Enter A \n"); scanf("%d",&A); Func (t); extern int B; printf(" N2 = %d\n",B);}
2.cpp #include <stdio.h> int B; void Func (int t) {printf(" Enter B \n"); scanf("%d",&B); extern int A; printf(" N1 = %d\n",A);}
5.Написать программу, в которой объявлена переменная variant1, а также переменная с таким же именем должна быть объявлена в функции, описанной в этом же файле. Переменным должно быть присвоено разное значение. В цикле вывести эти переменные.
#include <iostream> using namespace std; void func(); int variant1 = 16;
void main() { setlocale(LC_ALL,"Russian"); int variant1= 3; for(int i=0;i<3;i++) { printf("variant1 =%d\n ",variant1); variant1++; func();} }
void func() { printf("variant1 в функции =%d\n",variant1); variant1++; }
(7б) Написать программу, которая заполняет квадратную матрицу натуральными числами "по спирали", используя глобальные переменные. #include <iostream> using namespace std; int const n=5; void main() { setlocale(LC_ALL,"rus"); int Arr[n][n],i=0, j, k = 0, p=1;
while (i < n*n) { k++; for (j=k-1;j<n-k+1;j++) { Arr[k-1][j]=p++; i++; }
for (j=k;j<n-k+1;j++) { Arr[j][n-k]=p++; i++; }
for (j=n-k-1;j>=k-1;j--) { Arr[n-k][j]=p++; i++; }
for (j=n-k-1;j>=k;j--) { Arr[j][k-1]=p++; i++; }
}
for (int i=0; i<n; i++) { for (int j=0; j<n; j++) { printf("%4d",Arr[i][j]); } printf("\n"); } }
7.(7б) Написать программу, которая демонстрирует отличие автоматических переменных от статических переменных. #include <iostream> void func(); void main() {setlocale(LC_ALL,"Rus"); for(int i = 0; i < 3; ++i) func(); } void func() { int y=2; static int x = 0; ++x; ++y; printf("Значение static int x=%d\n",x); printf("Значение int y=%d\n",y); }
№1 (7б) Написать программу, которая читает строку символов с клавиатуры. Необходимо удалить из строки все цифры и дописать их в конец строки и вывести результат на экран. Длина строки не вводится, а определяется в программе. #include <iostream> #include <ctype.h> using namespace std; void main(void) { setlocale(LC_ALL,"Rus"); char string[300]; char Result[300]={0}; char res[300]={0}; int k; cout<<"Введите строку : "; gets(string); k=(int)strlen(string); char *ptr = Result,*ua=res; for (int i=0; i<k; i++) { if (!isdigitstring[i])) *ptr++ = string[i]; else *ua++=string[i];} cout<<endl<<"Результат: "<<Result<<res<<endl; } № 2 (6б) Написать программу, которая читает с клавиатуры строку символов. Необходимо после каждого четвертого пробела вставить точку и удалить последние "лишние" символы. Вывести результат на экран. Длина строки не вводится, а определяется в программе. Если строка не удовлетворяет условию, выдать сообщение об ошибке и предложить ввести снова. #include <stdio.h> #include <iostream> void main() { setlocale (LC_ALL, "Rus"); char X[300]; int i,n=0,k=0; printf("Введите строку: \n",n); for(i=0;(X[i]=getchar())!='\n';i++) n++; printf("Преобразованная строка: \n"); for(i=0;i<n;i++) { if(X[i]==' ') { k++; if (k%4==0) { putchar(X[i]); putchar('.'); } } else putchar(X[i]); } printf("\n"); }
№ 7 (7б) Написать программу, которая читает с клавиатуры строку символов. Необходимо каждую закрывающую скобку ')', для которой нет парной открывающей '(', заменить на '?'. Вывести результат на экран. Длина строки не вводится, а определяется в программе. #include <conio.h> #include <iostream> using namespace std; void main () { setlocale(LC_ALL,"Rus"); int i,k = 0,n; char string[300]; cout<<"Введите строку : "; gets(string); n=(int)strlen(string); for (i=0;i<n;i++) { if (string[i]=='(') k++; if (string[i]==')') k--; if (k<0) { string[i]='?'; k++; } } printf("Результат:%s",string); getch (); }
12.Написать программу, которая читает с клавиатуры строку символов. Необходимо заменить все цифры знаком '+', если в строке цифр больше, чем латинских букв. В противном случае заменить все латинские буквы знаком '-'. Вывести результат на экран. Длина строки не вводится, а определяется в программе. #include <iostream> #include <ctype.h> using namespace std; void main(void) { setlocale(LC_ALL,"Rus"); char s[300]; char Result[300]={0}; char res[300]={0}; int k,b,sim; cout<<"Введите строку : "; gets(s); k=(int)strlen(s); char *ptr = Result,*ua=res; for (int i=0; i<k; i++) { if (!isdigit(s[i])) *ptr++ = s[i]; else *ua++=s[i];} b=(int)strlen(Result); sim=(int)strlen(res);
if(sim>b) {for(int i=0;i<k;i++) {if((s[i] == '1' || s[i] == '2' || s[i] == '3' || s[i] == '4' || s[i] == '5' || s[i] == '6' || s[i] == '7' || s[i] == '8' || s[i] == '9' || s[i] == '0')) s[i]='+';}} else {for(int i=0;i<k;i++) {if((s[i] == '1' || s[i] == '2' || s[i] == '3' || s[i] == '4' || s[i] == '5' || s[i] == '6' || s[i] == '7' || s[i] == '8' || s[i] == '9' || s[i] == '0'))b;
else s[i]='-'; }} cout<<endl<<"Результат: "<<s<<endl; }
Лабораторная № 30 4. Даны текстовые файлы f и g. Необходимо поменять местами содержимое этих файлов (предварительно файлы f и g необходимо заполнить). Используйте вспомогательный файл h. Результат вывести на экран.
#include <conio.h> #include <stdio.h> #include <iostream> int main() { setlocale(LC_ALL,"Rus"); char s[100]={0},s1[100]={0},s2[100]={0}; char *uk=s,*ua=s1,*ul=s2; FILE *file,*f2,*f3;
if ((file = fopen("f.txt","r")) == NULL) printf("Файл невозможно открыть или создать\n"); else{ while (!feof(file)) {fscanf (file,"%c",&*uk); uk++; }} fclose(file); printf("%s\n",s); if ((f2= fopen("h.txt","w")) == NULL) printf("Файл невозможно открыть или создать\n"); else{ fprintf(f2,"%s",s); fclose(f2); } if ((f3= fopen("g.txt","r")) == NULL) printf("Файл невозможно открыть или создать\n"); else{while (!feof(file)) {fscanf (file,"%c",&*ua); ua++; }} fclose(f3);
if ((file= fopen("f.txt","w")) == NULL) printf("Файл невозможно открыть или создать\n"); else{ fprintf(f2,"%s",s1);} fclose(file); if ((f2= fopen("h.txt","r")) == NULL) printf("Файл невозможно открыть или создать\n"); else{while (!feof(file)) {fscanf (file,"%c",&*ul); ul++; }} fclose(f2);
if ((f3= fopen("g.txt","w")) == NULL) printf("Файл невозможно открыть или создать\n"); else{ fprintf(f3,"%s",s2);} fclose(f3);
return 0; }
13. Дан текстовый файл. Подсчитать сколько в нем слов и вывести результат на экран.
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h> #define STRMAX 128 int main() {setlocale(LC_ALL,"Rus"); FILE *file; int cn=0; char sl[STRMAX]; char *pt; if ((file = fopen("A.txt","r")) == NULL) printf("Файл невозможно открыть или создать\n"); else{ while (fgets(sl,STRMAX-1,file)!=NULL) {pt=strtok(sl, ".,; !?\r\n"); while(pt!=NULL) {cn++; pt=strtok(NULL,".,; !?\r\n"); }} printf("Число слов %d\n",cn); } fclose(file); return 0; }
Популярное: Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение... Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной... Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1098)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |