- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Максимальная сумма элементов из нескольких массивов(функция с переменным числом параметров)
- •Int main()
- •Замена абсолютно любых слов местами (просто в программе цифорки нужные поменять) Где цифры жирные там менять по ситуации
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Int main()
- •Строка в числа(в комментах код для подсчёта количества слов или чисел в строке рекурсией, это тоже где-то надо, вроде бы)
- •Int main()
- •Int main()
- •Int main()
Int main()
{
int *A,*B,*C;
int size_a,size_b,size_c;
int i;
printf("Enter the demision of array A: ");
scanf("%d",&size_a);
printf("Enter the demision of array B: ");
scanf("%d",&size_b);
A=(int*)malloc(size_a*sizeof(int));
for(i=0;i<size_a;i++)
{
printf("Element[%d]= ",i);
if(i==0)
scanf("%d",&A[i]);
else
{
scanf("%d",&A[i]);
if(A[i]<A[i-1])
i--;
}
}
for(i=0;i<size_a;i++)
printf("%d ",A[i]);
B=(int*)malloc(size_b*sizeof(int));
for(i=0;i<size_b;i++)
{
printf("Element[%d]= ",i);
if(i==0)
scanf("%d",&B[i]);
else
{
scanf("%d",&B[i]);
if(B[i]>B[i-1])
i--;
}
}
for(i=0;i<size_b;i++)
printf("%d ",B[i]);
size_c=size_a+size_b;
C=(int*)malloc(size_c*sizeof(int));
Array(A,B,C,size_a,size_b);
printf("\n\n\n\n\n");
for(i=0;i<size_c;i++)
printf("%d ",C[i]);
free(A);
free(B);
free(C);
getch();
return 0;
}
Сумма int и float бестиповым указателем
#include<stdio.h>
#include<conio.h>
double Sum(int n, ...)
{
double sum=0;
char c;
int i;
void *p=&n;
p=(int*)p+1;
while(n--)
{
c=*(int*)p;
p=(int*)p+1;
i=*(int*)p;
p=(int*)p+1;
switch(c)
{
case 'f':
while(i--)
{
sum+=*(double*)p;
p=(double*)p+1;
}
break;
case 'i':
while(i--)
{
sum+=*(int*)p;
p=(int*)p+1;
}
break;
}
}
return sum;
}
Int main()
{
double sum=Sum(2,'f',3,1.2,2.3,3.7,'i',2,1,2);
printf("%f",sum);
getch();
return 0;
}
Сумма int и float макросами
#include<stdio.h>
#include<conio.h>
#include<stdarg.h>
enum data
{Int,Float}tp;
float Sum(int k, int l, data tp, ...)
{
float sum=0;
va_list p;
va_start(p,tp);
while(k--)
{
switch(tp)
{
case Float:
while(l--)
sum+=va_arg(p,double);
break;
case Int:
while(l--)
sum+=va_arg(p,int);
break;
}
l=va_arg(p,int);
tp=va_arg(p,enum data);
}
va_end(p);
return sum;
}
Int main()
{
float sum=Sum(3,2,Int,1,1,3,Float,1.4,2.7,4.6,4,Int,4,5,7,8);
printf("%f",sum);
getch();
return 0;
}
Максимальная сумма элементов из нескольких массивов(функция с переменным числом параметров)
#include<stdio.h>
#include<conio.h>
#include<malloc.h>
#define K 3
int MaxSum(int k,int size,float*arr, ...)
{
int i,j=0,sum, maxsum=0 ,maxindex=0;
float**p=&arr;
for(j=0;j<k;j++)
{
for(i=0,sum=0;i<size;i++)
sum+=p[j][i];
if(sum>maxsum)
{
maxsum=sum;
maxindex=j;
}
}
return maxindex;
}
Int main()
{
int size,i,j,index;
float **array;
printf("Enter, the demision of arrays: ");
scanf("%d",&size);
array=(float**)malloc(K*sizeof(float*));
for(i=0;i<K;i++)
array[i]=(float*)malloc(size*sizeof(float));
for(i=0;i<K;i++)
for(j=0;j<size;j++)
scanf("%f",&array[i][j]);
index=MaxSum(K,size,array[0],array[1],array[2]);
for(i=0;i<size;i++)
printf("%f ",array[index][i]);
for(i=0;i<K;i++)
free(array[i]);
free(array);
getch();
return 0;
}
Вставить строку с n-ой позиции
#include<stdio.h>
#include<conio.h>
#include<malloc.h>
#include<Windows.h>
int GetStr(char*str,int size)
{
int i;
char c;
for(i=0;i<size&&(c=getche())!=13;i++)
{
str[i]=c;
}
str[i]='\0';
return i;
}
void Cancentaticon(char*str1,char*str2,int position)
{
int i,j;
for(i=0;str1[i]!='\0';i++);
for(j=0;str2[j]!='\0';j++);
j+=i;
while(i>position-2)
{
str1[j]=str1[i];
i--;
j--;
}
for(i=position-1,j=0;str2[j]!='\0';i++,j++)
str1[i]=str2[j];
}
