·¢²¼Ê±¼ä : ÐÇÆÚËÄ ÎÄÕ¡¶Êý¾Ý½á¹¹ÊµÑéÓëʵѵ½Ì³Ì(µÚ4°æ)¡·³ÌÐò´úÂë¸üÐÂÍê±Ï¿ªÊ¼ÔĶÁ
int display( int y, char *str ) // ÔÚÆÁĻָ¶¨ÐÐÏÔʾһÐÐÊý¾Ý { clreol(); // Çå³ýÒ»ÐÐ gotoxy( 1, y ); // ¹â±êÒƶ¯µ½ÐÐÊ× printf( str ); fflush( stdout ); return 0;
}
int append() // ÔÚµ±Ç°¹â±êϼÓÈëÒ»¿ÕÐÐ
{ int i; int nr;
// ±à¼¼Ç¼ÔÚ»º³åÇøÖÐÐкÅ
nr = edit.shiney - 1 + edit.scry; if( edit.allrec >= MAXROW ) {// ±à¼ÐÐÊýÔ½½ç
display( 25, \Too many lines\ return -1; }
for( i = edit.allrec; i > nr + 1; i-- )
// Êý¾ÝºóÒÆÒ»ÐÐ
memcpy( edit.info[i], edit.info[i-1], MAXCOL + 1 );
memset( edit.info[nr+1], 0, MAXCOL + 1 ); // ÔÚ¹â±êºó²åÈëÒ»¿ÕÐÐ edit.allrec++;
if( edit.shiney >= 24 ) { // ¹â±êËùÔÚλÖÃΪÆÁÄ»×îºóÒ»ÐÐ edit.shiney = 24; edit.scry++; // ÆÁÄ»ÏÂÒÆÒ»ÐÐ } else edit.shiney++; // ¹â±êÏÂÒÆÒ»ÐÐ refresh_scr();
// Ë¢ÐÂÆÁÄ»
return 0;
}
int search( char *str ) // ²éÕÒÎļþÖÐÆ¥Åä×ֶΣ¬·µ»Ø0: ²éÕҳɹ¦ { int i, j, len, cmplen; len = strlen( str ); if( len == 0 ) // ÎÞ²éÕÒÄÚÈÝ return -1; j = edit.shinex;
for( i = edit.scry + edit.shiney - 1; i < edit.allrec; i++ ) {
88
cmplen = strlen( edit.info[i] ) - len; for( ; j <= cmplen; j++ ) if( strncmp( edit.info[i] + j, str, len ) == 0 ) break; if( j <= cmplen ) // ²éµ½Æ¥Åä×ֶΠbreak;
j = 0; }
if( i == edit.allrec )
// ËÑË÷µ½Îļþ⣬±íʾ²éÕÒʧ°Ü
return -1;
if( i >= edit.scry && i < edit.scry + 24 ) { // Æ¥ÅäµÄÄÚÈÝÔÚµ±Ç°ÆÁÄ»ÄÚ edit.shinex = j + 1; edit.shiney = i + 1 - edit.scry; gotoxy( edit.shinex, edit.shiney ); } else { // Æ¥ÅäµÄÄÚÈݲ»ÔÚµ±Ç°ÆÁÄ» edit.shinex = j + 1; edit.shiney = 1; edit.scry = i; refresh_scr(); }
return 0;
}
89
ʵÑé4 ÂÃÓηÏß°²ÅÅÄ£Äâϵͳ
[²Î¿¼³ÌÐò]£º #include
#define max 1000 typedef int array[n][n]; array a,b,c,d; int path[n],s[n]; int p(array b, int *m) {
int pi,pj,pk; *m=0;
For(pi=0;pi pk=max; for(pj=0;pj if((pk>0)&&(pk!=max)) { *m=*m+pk; For(pj=0;pj b[pi][pj]=b[pi][pj]-pk; } } for(pj=0;pj pk=max; for(pi=0;pi if((pk>0)&&(pk!=max)) { *m=*m+pk; for(pi=0;pi 90 b[pi][pj]=b[pi][pj]-pk; } } return; } main() { int i,j,k,min,m1,m,jj,kk,si,sj; printf(¡°\\n input travelling expenses table:¡±); printf(¡°\\n¡±); for(i=0;i scanf(¡°%d¡±,&a[i][j]); for(i=0;i path[0]=0; i=0; s[0]=max; for(j=1;j m1=max; for(j=0;j if((s[j]==0)&&(b[i][j]!=max)) { for(si=0;si c[i][kk]=max; c[kk][j]=max; }