#define MAX 100 typedef struct{
char dm[5]; /*²úÆ·´úÂë*/ char mc[11]; /*²úÆ·Ãû³Æ*/ int dj; /*µ¥¼Û*/ int sl; /*ÊýÁ¿*/ long je; /*½ð¶î*/ }PRO;
PRO sell[MAX]; void ReadDat(); void WriteDat();
void SortDat() {int i,j; PRO xy;
for(i=0;i<99;i++)
for(j=i+1;j<100;j++)
if(strcmp(sell[i].mc,sell[j].mc)>0||strcmp(sell[i].mc,sell[j].mc)==0&&sell[i].je>sell[j].je) {xy=sell[i];sell[i]=sell[j];sell[j]=xy;} }
void main() {
memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); }
void ReadDat() {
FILE *fp;
char str[80],ch[11]; int i;
fp=fopen(\ for(i=0;i<100;i++){ fgets(str,80,fp);
memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch);
memcpy(ch,str+18,5);ch[5]=0;
sell[i].sl=atoi(ch);
sell[i].je=(long)sell[i].dj*sell[i].sl; }
fclose(fp); }
void WriteDat() {
FILE *fp; int i;
fp=fopen(\ for(i=0;i<100;i++){
printf(\ fprintf(fp,\ }
fclose(fp); }??
************************************************************************** ¡ï¡îÌâÄ¿14£¨ÕûÊýͳ¼ÆÅÅÐòÌâ)
ÒÑÖªÊý¾ÝÎļþIN.DATÖдæÓÐ200¸öËÄλÊý£¬²¢Òѵ÷ÓöÁº¯ÊýreadDat()°ÑÕâЩÊý´æÈëÊý×éaÖУ¬Ç뿼Éú±àÖÆÒ»º¯ÊýjsVal()£¬Æä¹¦ÄÜÊÇ£ºÒÀ´Î´ÓÊý×éaÖÐÈ¡³öÒ»¸öËÄλÊý£¬Èç¹û¸ÃËÄλÊýÁ¬Ðø´óÓÚ¸ÃËÄλÊýÒÔºóµÄÎå¸öÊýÇÒ¸ÃÊýÊÇÆæÊý£¨¸ÃËÄλÊýÒÔºó²»ÂúÎå¸öÊý£¬Ôò²»Í³¼Æ£©£¬Ôòͳ¼Æ³öÂú×ã´ËÌõ¼þµÄ¸öÊýcnt²¢°ÑÕâЩËÄλÊý°´´ÓСµ½´óµÄ˳Ðò´æÈëÊý×ébÖУ¬×îºóµ÷ÓÃдº¯ÊýwriteDat( )°Ñ½á¹ûcntÒÔ¼°Êý×ébÖзûºÏÌõ¼þµÄËÄλÊýÊä³öµ½OUT.DATÎļþÖС£ ×¢Ò⣺²¿·ÖÔ´³ÌÐò´æÔÚÎļþprog1.cÖС£
³ÌÐòÖÐÒѶ¨ÒåÊý×飺a[200]£¬b[200]£¬ÒѶ¨Òå±äÁ¿£ºcnt
ÇëÎð¸Ä¶¯Êý¾ÝÎļþIN.DATÖеÄÈκÎÊý¾Ý¡¢Ö÷º¯Êýmain()¡¢¶Áº¯ÊýreadDat()ºÍдº¯ÊýwriteDat()µÄÄÚÈÝ¡£ #include
int a[MAX], b[MAX], cnt = 0 ;
void jsVal() {int i,j,flag;
for(i=0;i if(a[i]>a[j]&&a[i]%2) flag=1; else {flag=0;break;} if(flag==1) b[cnt++]=a[i]; } for(i=0;i if(b[i]>b[j]) {flag=b[i];b[i]=b[j];b[j]=flag;} } void readDat() { int i ; FILE *fp ; fp = fopen(\ for(i = 0 ; i < MAX ; i++) fscanf(fp, \ fclose(fp) ; } void main() { int i ; readDat() ; jsVal() ; printf(\Âú×ãÌõ¼þµÄÊý=%d\\n\ for(i = 0 ; i < cnt ; i++) printf(\ printf(\ writeDat() ; } writeDat() { FILE *fp ; int i ; fp = fopen(\ fprintf(fp, \ for(i = 0 ; i < cnt ; i++) fprintf(fp, \ fclose(fp) ; } ********************************************************************* ¡ïÌâÄ¿15£¨ÕûÊý¸÷λÊý×ÖÔËËãÅÅÐòÌâ) ÒÑÖªÊý¾ÝÎļþIN.DATÖдæÓÐ200¸öËÄλÊý£¬²¢Òѵ÷ÓöÁº¯ÊýreadDat()°ÑÕâЩÊý´æÈëÊý×éaÖУ¬Ç뿼Éú±àÖÆÒ»º¯ÊýjsVal()£¬Æä¹¦ÄÜÊÇ£ºÈôÒ»¸öËÄλÊýµÄǧλÊý×ÖÉϵÄֵСÓÚµÈÓÚ°ÙλÊý×ÖÉϵÄÖµ£¬°ÙλÊý×ÖÉϵÄֵСÓÚµÈÓÚʮλÊý×ÖÉϵÄÖµ£¬ÒÔ¼°Ê®Î»Êý×ÖÉϵÄֵСÓÚµÈÓÚ¸öλÊý×ÖÉϵÄÖµ£¬²¢ÇÒÔËÄλÊýÊÇżÊý£¬Ôòͳ¼Æ³öÂú×ã´ËÌõ¼þµÄ¸öÊýcnt²¢°ÑÕâЩËÄλÊý°´´ÓСµ½´óµÄ˳Ðò´æÈëÊý×ébÖУ¬×îºóµ÷ÓÃдº¯ÊýwriteDat()°Ñ½á¹ûcntÒÔ¼°Êý×ébÖзûºÏÌõ¼þµÄËÄλÊýÊä³öµ½OUT.DATÎļþÖС£ ×¢Ò⣺²¿·ÖÔ´³ÌÐò´æÔÚÎļþprog1.cÖС£ ³ÌÐòÖÐÒѶ¨ÒåÊý×飺a[200]£¬b[200]£¬ÒѶ¨Òå±äÁ¿£ºcnt ÇëÎð¸Ä¶¯Êý¾ÝÎļþIN.DATÖеÄÈκÎÊý¾Ý¡¢Ö÷º¯Êýmain()¡¢¶Áº¯ÊýreadDat()ºÍдº¯ÊýwriteDat()µÄÄÚÈÝ¡£ #include int a[MAX], b[MAX], cnt=0; void jsVal() {int i,j; int qw,bw,sw,gw; for (i=0;i {qw=a[i]/1000; bw=a[i]00/100; sw=a[i]0/10; gw=a[i]; if((qw<=bw)&&(bw<=sw)&&(sw<=gw)&&(a[i]%2==0)) } for(i=0;i if (b[i]>b[j]) {qw=b[i];b[i]=b[j];b[j]=qw;} } void readDat() { int i ; FILE *fp ; fp = fopen(\ for(i = 0 ; i < MAX ; i++) fscanf(fp, \ fclose(fp) ; } void main() { int i ; readDat() ; jsVal() ; printf(\Âú×ãÌõ¼þµÄÊý=%d\\n\ for(i = 0 ; i < cnt ; i++) printf(\ printf(\ writeDat() ; } writeDat() { FILE *fp ; int i ; b[cnt++]=a[i];
Ïà¹ØÍÆ¼ö£º