Текст опубликован в личном блоге и его автор не имеет отношения к администрации сайта
#include <stdio.h>
void main(void)
{
int * ptr1 = (int *) 100;
int * ptr2 = (int *) 200;
ptr1++; /* физически значение указателя увеличивается на 2 */
ptr2 -= 10; /* физически значение указателя уменьшается на 20 */
printf("ptr2=%d, ptr1=%d, ptr2-ptr1=%d\n", ptr2, ptr1, ptr2-ptr1);
}
#include<stdio.h>
void main(void)
{
char * messages[] =
{
"IBM PC",
"IBM PC XT",
"IBM PCjr",
"IBM PC AT",
"не опознан",
};
char far * ptr = (char far *) 0xF000FFFEL;
char index;
index = * ptr ^ 0xFF;
printf("Тип компьютера, сообщаемый BIOS-ом: %s\n",
index <= 3 ? messages[index] : messages[4]);
}
#include<stdio.h>
void main(void)
{
int i, j, k;
char array[][2][21] = /* массив из 2 "слоев" по 2 строки и
21 столбцу в каждом слое */
{
{
"0-й слой 0-я строка", /* инициализация первого слоя */
"0-й слой 1-я строка", /* строковыми литералами */
},
{ /* посимвольная инициализация второго слоя */
{
'1', '-', 'й', ' ', 'с', 'л', 'о', 'й', ' ',
'0', '-', 'я', ' ', 'с', 'т', 'р', 'о', 'к', 'а', '\0'
},
{
'1', '-', 'й', ' ', 'с', 'л', 'о', 'й', ' ',
'1', '-', 'я', ' ', 'с', 'т', 'р', 'о', 'к', 'а', '\0'
},
}
};
printf("Размер массива array равен %d байт\n", sizeof(array));
printf("Размер слоя массива array равен %d байт\n", sizeof(array[0]));
printf("Размер строки массива array равен %d байт\n", sizeof(array[0][0]));
printf("Размер элемента массива array равен %d байт\n", sizeof(array[0][0][0]));
/*
Доступ к ASCIIZ-строкам через указатели на строки
*/
for(i=0; i < 2; i++)
for(j=0; j < 2; j++)
puts(array[i][j]); /* являются синонимами: */
/* puts(*(array+i)+j); или */
/* puts(*(*(array+i)+j)); */
/*
Посимвольный вывод элементов массива на экран.
*/
for(i=0; i < 2; i++)
for(j=0; j < 2; j++)
{
for(k=0; array[i][j][k]; k++)
putchar(array[i][j][k]); /* являются синонимами: */
/* putchar(*(array[i][j]+k)); или */
/* putchar(*(*(array[i]+j)+k)); или */
/* putchar(*(*(*(array+i)+j)+k)); */
putchar('\n');
}
}
#include<stdio.h>
#include<conio.h>
#define mm 4
#define nm 4
void main()
{
int i,imx,jmx,ixx,j,n=nm,m=mm;
float a[mm] [nm]={{9,8,7,6},
{8,4,6,5},
{1,0,5,-3},
{0,2,4,-2}},mi_ma,ma_mi;
clrscr();
/*
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
printf("Введите А[%i][%i]=",i,j);
scanf("%f",&*(*(a+i)+j));
}
}
//vvod opuskalsya dlya otladki
*/
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
printf(" %g ",*(*(a+i)+j));
}
puts("");
}
for(i=0;i<n;i++)
{
mi_ma=*(*(a+i)+0);
for(j=0;j<m;j++)
{
if(*(*(a+i)+j)<mi_ma)
{
mi_ma=*(*(a+i)+j);
imx=i;
jmx=j;
}
else;
}
ixx=i;
i=0;
ma_mi=*(*(a+i)+jmx);
for(j=jmx;i<n;i++)
{
if(*(*(a+i)+j)>ma_mi)
{
ma_mi=*(*(a+i)+j);
}
else;
}
if(ma_mi==mi_ma)
{
printf("a=%gi=%i j=%i\n",mi_ma,imx+1,jmx+1);
}
else;
i=ixx;
}
getch();
}
//by Dilon, все защищено по понятиям и все такое
#include "stdio.h"
#include "conio.h"
#define nn 4
#define kk 4
void main()
{
int i=0,j=0,min=0,max=0,p=0,k=0,l=0;
int m[nn][kk]={{1,-50,3,2},{0,-60,34,4},{3,-70,9,5},{4,-80,10,3}};
//for(i=0;i!=nn;i++) {
//for(j=0;j!=kk;j++)scanf("%d",&m[i][j]);
//}
while (k<=kk) {
min=m[k][0];
for (j=0;j<nn;j++) {
if (m[k][j]<min) {
min=m[k][j];
p=j;
}
}
max=m[0][p];
for (i=0;i<kk;i++){
if (m[i][p]>max) {
max=m[i][p];
l=i;
}
}
if (min==max) printf("%d",m[l][p]);
k++;
}
getch();
}