All pastes #616455 Raw Edit

Anonym

public text v1 · immutable
·published 2007-07-12 17:22 UTC
rendered paste body
// Aufgabe1

#include <stdio.h>


int main(void)
{
	unsigned int x = 01111;
	printf("%X\n", x &= 0x7f);
	printf("%X\n", x ^= 0x7f);
	printf("%X\n", x |= 0x7f);
	printf("%X\n", x <<= 5);
	printf("%X\n", x >>=5);

	x = x* 011;
	printf("%X\n", x &= 0x7f);
	printf("%X\n", x ^= 0x7f);
	printf("%X\n", x |= 0x7f);
	printf("%X\n", x <<= 5);
	printf("%X\n", x >>=5);
}


// Aufgabe2

#include <stdio.h>
char text[] ="Die Niebelungenspiele sind da!";
int i=0x4;
char * ptr = text + 050;

int main(void)
{
printf("\n\n|0123456789012345678901234567890123456789|\n\n");
printf("|%40s|  \n",text);
printf("|%s|    \n",ptr-26);
printf("|%-16s| \n",text + i);
printf("|%10.3s|\n",text);

puts (text+i*7);
}




// Aufgabe 3

#include <stdio.h>

int main()
{	union x
	{ unsigned short a;
	  unsigned char b[2];
	};
union x var_un= { -255};

printf("Byte-1: = %d, Byte-2: = %d \n", var_un.b[0], var_un.b[1]);
var_un.a = 257;
printf("Byte-1: = %d, Byte-2: = %d \n", var_un.b[0], var_un.b[1]);
var_un.b[0] = 0;
var_un.b[1] = 1;
printf("a: = %d\n", var_un.a);
var_un.b[0] = 1;
var_un.b[1] = 0;
printf("a: = %d\n", var_un.a);
var_un.b[0] = 1;
var_un.b[1] = 1;
printf("a: = %d\n", var_un.a);
var_un.b[0] = 1;
var_un.b[1] = 2;
printf("a: = %d\n", var_un.a);
var_un.b[0] = 0;
var_un.b[1] = -1;
printf("a: = %d\n", var_un.a);
var_un.b[0] = -1;
var_un.b[1] = 0;
printf("a: = %d\n", var_un.a);
return 0;
}

// Aufgabe4

#include <stdio.h>

void main(void)
{
	int a=10;
	int b=10;
	int c=10;

	for(a = 10; a > 7 ; --a)
	{
		for (b = 10; b > (a-b); b--)
		{
			for ( c= 10 ; c > ( b-3);c-=2)
				printf("+");
			printf("\n");
		}
		printf("\n");
	}
}

// Aufgabe5
#include<stdio.h>
int matrix [3][5]={{-4,20,23,-12,8},{18,-13,8,-9,5},{3,12,-99,-48,-5}};
int summe1[3];
int summe2[5];
int summe3;
int matrixsumme (int vektor [][5],int feld1[],int feld2[]);
int main()
{
	int i,j,gesamtsumme;
	gesamtsumme =matrixsumme(matrix,summe1,summe2);
	for(i=0;i<3;++i)
		printf("%6d\n",summe1[i]);
		for(j=0;j<5;++j)
			printf("%6d\n",summe2[j]);
			printf("%6d\n",gesamtsumme);
			printf("%6d\n",summe3);
			return 0;
}
int matrixsumme (int v[][5],int feld1[],int feld2[])
{
	int z,sp;
	for(z=0;z<3;++z)
	{
		feld1[z]=0;
		for(sp=0;sp<5;++sp){
			if(sp%2)
				feld1[z]+=v[z][sp];


	}

}

	for(sp=0;sp<5;++sp)
	{
		feld2[sp]=0;
		for(z=0;z<5;++z){
			if((z%2)==0)
				feld2[sp]+=v[z][sp];


	}

}
for (z=0;z<3;z+=1)
{
summe3 +=v[z][z];
}
return (feld1[0]+feld1[1]+feld1[2]);
}


// Aufgabe6

#include <stdio.h>


float f1(float *px, float *py);
float f2(float *px, float *py);
float *f3(float(*pt)(float *px, float *py));

int main(void)
{
	float *pa,*pb;
	pa = f3(f1);
	pb = f3(f2);

	return 0;
}

float f1(float *px,float *py)
{ static float z = 3;
z*=5.0;
printf("f1\n");
printf("%f\n",z);
return (z);
}

float f2(float *px,float *py)
{ static float r = 10.0;
r+=20;
printf("f2\n");
printf("%f\n",r);
return (r);
}

float *f3(float (*pt)(float *px, float *py))
{static float a=1.0,b=1.0,c=1.0;
c = (*pt)(&a,&b);
printf("f3\n");
   printf("%f\n",c);
return(&c);
}