الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في object

مغلق
بدأه smartboy في 8 مارس 2002 · 3 رد · 472 مشاهدة · في ارشيف قسم C/C++
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم تحية طيبة وبعد

أتمنى أن يكون جميع الأعضاء بخير والى تقدم أكثر وأكثر لهذا الموقع

أعزائي ...

قد قمت بكتابة هذا البرنامج

#include

void reading (int [][8]);

void findmaxmin(int [][8],int *,int *);

void swap(int [][8],int ,int );

void display(int [][8] );

void swapoddeven(int [][8]);

void swapfirstlast(int [][8]);

int menu();

main()

{

int ch,max,min,m,k;

int t[12][8];

do {

ch=menu();

switch(ch)

{

case 1: reading (t);

break;

case 2:

findmaxmin(t,&max,&min);

printf("n min=%d max=%d",min,max);

break;

case 3:

printf("n enter line m:");

scanf("%d",&m);

scanf("%d",&k);

swap(t,m,k);

display (t);

break;

case 4:

swapoddeven(t);

display(t);

break;

case 5:swapfirstlast(t);

display(t);

break;

case 6:

display (t);

break;

}

}while(ch!=7);

return 0;

}

int menu ()

{

int c;

printf("n**********************n");

printf("please enter your choice:n");

printf("1.readingn");

printf("2.findmaxinn");

printf("3.swapn");

printf("4.swapoddevenn");

printf("5.swap firstlastn");

printf("6.displayn");

printf("7.exitn");

scanf("%d",&c );

printf("your choice is %dn",c);

return c;

}

void reading (int t[][8])

{ int i,j;

for(i=0;i<12;i++)

for(j=0;j<8;j++)

{ printf("n enter :");

scanf("%d",&t[j]);

}

}

void findmaxmin(int t[][8],int *max,int *min)

{

int i,j;

*max=t[0][0];

*min=t[0][0];

for(i=0;i<12;i++)

for(j=0;j<8;j++) {

if(t[j] < *max) *max=t[j];

if(t[j] > *min) *min=t[j];

}

}

void swap(int t[][8],int m,int k)

{ int i,temp;

for(i=0;i<8;i++){

temp=t[m];

t[m]=t[k];

t[k]=temp;

}

}

void swapoddeven(int t[][8])

{ int i;

i=0;

while (i<11) {

swap (t,i,i+1);

i+=2;

}

}

void swapfirstlast(int t[][8])

{

int i,j;

j=11;

for(i=0;i<8;i++){

swap(t,i,j);

j--;}

}

void dispaly (int t[][8])

{int i,j;

for(i=0;i<12;i++)

for(j=0;j<8;j++);{

printf("%d",t[j]);

printf("n");

}

}

خالي من الأخطاء ولكن قبل التنفيذ تظهر هذه الرسالة

ولاينفذ البرنامج

--------------------Configuration: s - Win32 Debug--------------------

Compiling...

s.c

Linking...

s.obj : error LNK2001: unresolved external symbol _display

Debug/s.exe : fatal error LNK1120: 1 unresolved externals

Error executing link.exe.

s.exe - 2 error(s), 0 warning(s)

-------------------------------------

حاولت مرارا وتكرارا ولكن لم ألتمس السبب

ارجو المساعدة شاكر لكم تعاونكم

#2

اخي أبشرك البرنامج زبط الدالة diplay كنت كاتبها خلط (syntax ERROR)

وبعدين خل برنامجك سهر للقرائة زبطلك إياه شوي . يعني حط

مسافات وبيصير ينقري أسهل لك أنت بالطبع .

وبعدين بالنسبة للmax && min أنت عاكسها راجع كودي و كودك و لاحظ .

وبعدين لا جيت تسوي برنامج لا تخليه مصفوفة 8 × 12

خلها تجربة لك 2×3 أو 3×6 عشان أسرع لك في التجربة :)

وهذا هو تعديل الكود :

#include 
void reading (int [][8]); 
void findmaxmin(int [][8],int *,int *); 
void swap(int [][8],int ,int ); 
void display(int [][8] ); 
void swapoddeven(int [][8]); 
void swapfirstlast(int [][8]); 
int menu(); 

main() 
{ 
	int ch, max, min, m, k; 
	int t[12][8]; 

	do { 
		ch=menu(); 
		switch( ch ) 
		{ 
			case 1: reading (t); 
			break; 
			case 2: 
				findmaxmin(t,&max,&min); 
				printf("n min=%d max=%d",min,max); 
			break; 
			case 3: 
				printf("n enter line m AND k:"); 
				scanf("%d",&m); 
				scanf("%d",&k); 
				swap(t,m,k); 
				display(t); 
			break; 
			case 4: 
				swapoddeven(t); 
				display(t); 
			break; 
			case 5:swapfirstlast(t); 
					display(t); 
			break; 
			case 6: 
				display (t); 
			break; 
			ch=menu();
		} 
	}while( ch != 7 ); 

		return 0; 
} 

int menu () 
{ 
	int c; 

	printf("n**********************n"); 
	printf("please enter your choice:n");	
	printf("1.readingn"); 
	printf("2.findmaxinn"); 
	printf("3.swapn"); 
	printf("4.swapoddevenn");	
	printf("5.swap firstlastn"); 
	printf("6.displayn"); 
	printf("7.exitn"); 
	scanf("%d",&c ); 
	printf("your choice is %dn",c); 
	return c; 
} 

void reading (int t[][8]) 
{
	int i,j; 
		for( i=0 ; i<12 ; i++ ) 
			for( j=0; j<8 ; j++ ) 
			{
				printf("n enter :"); 
				scanf("%d",&t[j]); 
			} 
}

void findmaxmin(int t[][8],int *max,int *min) 
{ 
	int i,j; 
	*max=t[0][0]; 
	*min=t[0][0];

		for( i=0 ; i<12 ; i++ ) 
			for( j=0 ; j<8 ; j++ ) 
			{ 
				if( t[j] > (*max) )
					(*max) = t[j]; 

				if( t[j] < *min ) 
					*min = t[j]; 
			} 
} 

void swap(int t[][8],int m,int k) 
{
	int i,temp; 
		for( i=0 ; i<8 ; i++ )
		{ 
			temp=t[m]; 
			t[m]=t[k]; 
			t[k]=temp; 
		} 
} 

void swapoddeven(int t[][8]) 
{
	int i; 
	i=0; 
		while ( i < 11 ) 
		{ 
			swap (t,i,i+1); 
			i+=2; 
		} 
} 

void swapfirstlast(int t[][8]) 
{ 
	int i,j; 
	j=11; 
		for( i=0 ; i<8 ; i++ )
		{ 
			swap(t,i,j); 
			j--;
		} 
}

void display (int t[][8]) 
{
	int i,j; 
		for( i=0 ; i<12 ; i++) 
			for( j=0 ; j<8 ; j++)
			{ 
				printf("%d",t[j]); 
				printf("n"); 
			} 
}

مع تحياتي و تحت أمرك ,,,

#3

ألف شكر لك وفعلا كلامك طلع مزبوط .....

ومشكور وايد ياأحسن طلال ....

وان شاء الله نستفيد ونفيد...

مع السلامة:):)

#4

أبد يا أخوي ما سوينا إلا الواجب :)

وإحنا نعين و نعاون ,..,,

هذا الموضوع مغلق.

مواضيع مشابهة