版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
全國計算機等級考試三級C語言上機100題一.排序類:1.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:假如四位數各位上的數字均是0或2或4或6或8,則記錄出滿足此條件的個數cnt,并把這些四位數按從大到小的順序存入數組b中。最后main()函數調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t; for(i=0;i<MAX;i++)?{? t=a[i]; ?if(t%2+t/10%2+t/100%2+t/1000%2==0)?? b[cnt++]=t; } for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++) if(b[i]<b[j]) ??{? ?t=b[i]; ? ?b[i]=b[j];??? b[j]=t;? }?}voidreadDat(){inti;FILE*fp;fp=fopen("in.dat","r");for(i=0;i<MAX;i++)fscanf(fp,"%d",&a[i]);fclose(fp);}voidmain(){inti;readDat();jsVal();printf("滿足條件的數=%d\n",cnt);for(i=0;i<cnt;i++)printf("%d",b[i]);printf("\n");writeDat();}writeDat(yī)(){FILE*fp;inti;fp=fopen("out.dat","w");fprintf(fp,"%d\n",cnt);for(i=0;i<cnt;i++)fprintf(fp,"%d\n",b[i]);fclose(fp);}2.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat(yī)()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:假如四位數各位上的數字均是奇數,則記錄出滿足此條件的個數cnt并把這些四位數按從大到小的順序存入數組b中。最后main()函數調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat(yī)()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){ inti,j,t;?for(i=0;i<MAX;i++) { t=a[i];? if(t%2+t/10%2+t/100%2+t/1000%2==4) b[cnt++]=t; } for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++) ?if(b[i]<b[j]) ??{ ? ?t=b[i]; ?b[i]=b[j];? ?b[j]=t; ?} }voidreadDat(){inti;FILE*fp;fp=fopen("in.dat","r");for(i=0;i<MAX;i++)fscanf(fp,"%d",&a[i]);fclose(fp);}voidmain(){inti;readDat();jsVal();printf("滿足條件的數=%d\n",cnt);for(i=0;i<cnt;i++)printf("%d",b[i]);printf("\n");writeDat();}writeDat(){FILE*fp;inti;fp=fopen("out.dat","w");fprintf(fp,"%d\n",cnt);for(i=0;i<cnt;i++)fprintf(fp,"%d\n",b[i]);fclose(fp);}3.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:依次從數組a中取出一個四位數,假如該四位數連續(xù)小于該四位數以后的五個數且該數是偶數(該四位數以后不滿五個數,則不記錄),則記錄出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b中,最后調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t; for(i=0;i<200-5;i++)??if(a[i]>a[i+1]&&a[i]>a[i+2]&&a[i]>a[i+3]&&a[i]>a[i+4]&&a[i]>a[i+5]&&a[i]%2==0) ??b[cnt++]=a[i]; for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++)? if(b[i]>b[j]) {? ? t=b[i];??? b[i]=b[j];? ? b[j]=t; ??}}4.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat(yī)()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:依次從數組a中取出一個四位數,假如該四位數連續(xù)大于該四位數以前的五個數且該數是偶數(該四位數以前不滿五個數,則不記錄),則記錄出滿足此條件的個數cnt并把這些四位數按從大到小的順序存入數組b中,最后調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t;?for(i=5;i<200;i++)if(a[i]>a[i-1]&&a[i]>a[i-2]&&a[i]>a[i-3]&&a[i]>a[i-4]&&a[i]>a[i-5]&&a[i]%2==0)???b[cnt++]=a[i]; for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++) if(b[i]<b[j])? ?{ ???t=b[i];? b[i]=b[j]; ???b[j]=t;? }}5.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat(yī)()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:依次從數組a中取出一個四位數,假如該四位數連續(xù)大于該四位數以后的五個數且該數是奇數(該四位數以后不滿五個數,則不記錄),則記錄出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b中,最后調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t; for(i=0;i<200-5;i++) ?if(a[i]>a[i+1]&&a[i]>a[i+2]&&a[i]>a[i+3]&&a[i]>a[i+4]&&a[i]>a[i+5]&&a[i]%2==1) b[cnt++]=a[i];?for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++)?? if(b[i]>b[j]) ??{ ?t=b[i];?? b[i]=b[j];????b[j]=t;? }}6.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:依次從數組a中取出一個四位數,假如該四位數連續(xù)大于該四位數以前的五個數且該數是奇數,且該數必須能被7整除(該四位數以前不滿五個數,則不記錄),則記錄出滿足此條件的個數cnt并把這些四位數按從大到小的順序存入數組b中,最后調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat(yī)()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){ inti,j,t; for(i=5;i<200;i++) if(a[i]>a[i-1]&&a[i]>a[i-2]&&a[i]>a[i-3]&&a[i]>a[i-4]&&a[i]>a[i-5]&&a[i]%2==1&&a[i]%7==0)???b[cnt++]=a[i]; for(i=0;i<cnt-1;i++)??for(j=i+1;j<cnt;j++) ?if(b[i]<b[j])?? { ?? t=b[i]; ?b[i]=b[j];? ??b[j]=t;???}}7.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把千位數字和十位數字重新組成一個新的十位數ab(新十位數的十位數字是原四位數的千位數字,新十位數的個位數字是原四位數的十位數字),以及把個位數字和百位數字組成另一個新的十位數cd(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的百位數字),假如新組成的兩個十位數ab-cd>=0且ab-cd<=10且兩個數均是奇數,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t,ab,cd;?for(i=0;i<MAX;i++) { ?ab=a[i]/1000*10+a[i]/10%10; ?cd=a[i]%10*10+a[i]/100%10;??if(ab-cd>=0&&ab-cd<=10&&ab%2&&cd%2&&ab[i]/10!=0&&cd/10!=0) ??b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++)??for(j=i+1;j<cnt;j++)? ?if(b[i]<b[j])???{ ?? t=b[i];? ?b[i]=b[j];?? b[j]=t;? ?}}8.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把千位數字和十位數字重新組成一個新的十位數ab(新十位數的十位數字是原四位數的千位數字,新十位數的個位數字是原四位數的十位數字),以及把個位數字和百位數字組成另一個新的十位數cd(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的百位數字),假如新組成的兩個十位數ab-cd>=10且ab-cd<=20且兩個數均是偶數,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t,ab,cd;?for(i=0;i<MAX;i++) {??ab=a[i]/1000*10+a[i]/10%10;??cd=a[i]%10*10+a[i]/100%10; if(ab-cd>=10&&ab-cd<=20&&?? ?ab%2==0&&cd%2==0&&? ? a[i]/10!=0&&a[i]/10!=0) ??b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++)???if(b[i]<b[j]) ? {? t=b[i];? ??b[i]=b[j];?? ?b[j]=t; ??}}9.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把千位數字和十位數字重新組成一個新的十位數ab(新十位數的十位數字是原四位數的千位數字,新十位數的個位數字是原四位數的十位數字),以及把個位數字和百位數字組成另一個新的十位數cd(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的百位數字),假如新組成的兩個十位數ab<cd,ab必須是奇數且不能被5整除,cd必須是偶數,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){?inti,j,t,ab,cd; for(i=0;i<MAX;i++)?{??ab=a[i]/1000*10+a[i]/10%10;? cd=a[i]%10*10+a[i]/100%10;? if(ab-<cd&&ab%2==1&&? ??ab%5!=0&&cd%2==0&&? ??ab/10!=0&&cd/10!=0)? ?b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++) ?if(b[i]<b[j]) ?{ t=b[i]; ???b[i]=b[j];??? b[j]=t; ?}}10.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把千位數字和十位數字重新組成一個新的十位數ab(新十位數的十位數字是原四位數的千位數字,新十位數的個位數字是原四位數的十位數字),以及把個位數字和百位數字組成另一個新的十位數cd(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的百位數字),假如新組成的兩個十位數ab>cd,ab必須是偶數且能被5整除,cd必須是奇數,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t,ab,cd; for(i=0;i<MAX;i++) {? ab=a[i]/1000*10+a[i]/10%10; cd=a[i]%10*10+a[i]/100%10; if(ab>cd&&ab%2==0&& ???ab%5==0&&cd%2==1&&? ? ab/10!=0&&cd/10!=0)? ?b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++) if(b[i]<b[j]) ?{ ??t=b[i];? ??b[i]=b[j]; b[j]=t; }}11.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把千位數字和十位數字重新組成一個新的十位數(新十位數的十位數字是原四位數的千位數字,新十位數的個位數字是原四位數的十位數字),以及把個位數字和百位數字組成另一個新的十位數(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的百位數字),假如新組成的兩個十位數均是素數且新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat(yī)()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;intisprime(intm){inti;for(i=2;i<=m/2;i++)if(m%i==0)return0;return1;}voidjsVal(){inti,j,t; for(t=0;t<MAX;t++)?{ ?i=a[t]/1000*10+a[t]/10%10; j=a[t]%10*10+a[t]/100%10; ?if(isprime(i)&&isprime(j)&&a[t]/1000&&a[t]%10!=0) ?b[cnt++]=a[t];?} for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++) if(b[i]<b[j]) { ? ?t=b[i]; ? b[i]=b[j];?? ?b[j]=t;???}}12.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把千位數字和個位數字重新組成一個新的十位數(新十位數的十位數字是原四位數的千位數字,新十位數的個位數字是原四位數的個位數字),以及把百位數字和十位數字組成另一個新的十位數(新十位數的十位數字是原四位數的百位數字,新十位數的個位數字是原四位數的十位數字),假如新組成的兩個十位數均是奇數并且兩個十位數中至少有一個數能被5整除,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t,ab,cd; for(i=0;i<MAX;i++)?{ ?ab=a[i]/1000*10+a[i]%10; cd=a[i]/100*10+a[i]/10%10;??if(ab%2==1&&cd%2==1&&(ab%5==0||cd%5==0)&&ab/10!=0&&cd/10!=0) ?b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++)? if(b[i]<b[j]) {????t=b[i];????b[i]=b[j]; b[j]=t;? }}13.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把個位數字和千位數字重新組成一個新的十位數(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的千位數字),以及把百位數字和十位數字組成另一個新的十位數(新十位數的十位數字是原四位數的百位數字,新十位數的個位數字是原四位數的十位數字),假如新組成的兩個十位數均是偶數并且兩個十位數中至少有一個數能被9整除,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t,ab,cd; for(i=0;i<MAX;i++) { ab=a[i]%10*10+a[i]/1000;??cd=a[i]/100%10*10+a[i]/10%10; if(ab%2==0&&cd%2==0&&(ab%9==0||cd%9==0)&&ab/10!=0&&cd/10!=0) ? b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++) ??if(b[i]<b[j])? ?{?? t=b[i];????b[i]=b[j]; ? b[j]=t;? }}14.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把個位數字和千位數字重新組成一個新的十位數(新十位數的十位數字是原四位數的個位數字,新十位數的個位數字是原四位數的千位數字),以及把百位數字和十位數字組成另一個新的十位數(新十位數的十位數字是原四位數的百位數字,新十位數的個位數字是原四位數的十位數字),假如新組成的兩個十位數必須是一個奇數,另一個為偶數并且兩個十位數中至少有一個數能被17整除,同時兩個新數的十位數字均不為零,則將滿足此條件的四位數按從大到小的順序存入數組b中,并要計算滿足上述條件的四位數的個數cnt。最后main()函數調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t,ab,cd; for(i=0;i<MAX;i++) {??ab=a[i]%10*10+a[i]/1000;??cd=a[i]/100*10+a[i]/10%10; if(((ab%2==1&&cd%2==0)||(ab%2==0&&cd%2==1))&&(ab%17==0||cd%17==0)&&ab/10!=0&&cd/10!=0) ?b[cnt++]=a[i]; }?for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++) ? if(b[i]<b[j])???{????t=b[i];?? ?b[i]=b[j]; b[j]=t; ??}}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(yī)()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){?inti,j,t; for(i=0;i<200;i++) {?if(a[i]/1000+a[i]/10%10==a[i]/100%10+a[i]%10&&a[i]%2==0)?? b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++)? if(b[i]>b[j])? ?{? t=b[i]; ? ?b[i]=b[j]; ? ?b[j]=t;? ?}}16.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把一個四位數的千位數字上的值減去百位數字上的值再減去十位數字上的值最后減去個位數字上的值,假如得出的值大于等于零且原四位數是奇數,則記錄出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b中,最后調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat(yī)()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){ inti,j,t;?for(i=0;i<200;i++)?{ if(a[i]/1000-a[i]/100%10-a[i]/10%10-a[i]%10>=0&&a[i]%2==1)???b[cnt++]=a[i]; }?for(i=0;i<cnt-1;i++)??for(j=i+1;j<cnt;j++)?? if(b[i]>b[j]) ??{ ?t=b[i]; ? b[i]=b[j];??? b[j]=t;???}}17.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:把一個四位數的個位數字上的值減去千位數字上的值再減去百位數字上的值最后減去十位數字上的值,假如得出的值大于等于零且原四位數是偶數,則記錄出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b中,最后調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的四位數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat(yī)()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){?inti,j,t;?for(i=0;i<200;i++) {?if(a[i]%10-a[i]/1000-a[i]/100%10-a[i]/10%10>=0&&a[i]%2==0) ? b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++) ?if(b[i]>b[j]) ?{ ???t=b[i]; ? ?b[i]=b[j]; b[j]=t; ??}}18.已知數據文獻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(yī)()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t; for(i=0;i<200;i++)?{ if(a[i]/1000+a[i]%10==a[i]/100%10+a[i]/10%10&&a[i]%2==1)???b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++)??for(j=i+1;j<cnt;j++)? if(b[i]>b[j])? ?{? ? t=b[i]; ?b[i]=b[j];? b[j]=t; }}19.已知數據文獻IN.DAT中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:若一個四位數的千位數字上的值大于等于百位數字上的值,百位數字上的值大于等于十位數字上的值,以及十位數字上的值大于等于個位數字上的值,并且原四位數是奇數,則記錄出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b中,最后調用寫函數writeDat(yī)()把結果cnt以及數組b中符合條件的數輸出到OUT.DAT文獻中。注意:部分源程序存在文獻prog1.c中。程序中已定義數組:a[200],b[200],已定義變量:cnt請勿改動數據文獻IN.DAT中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t;?for(i=0;i<200;i++) { if(a[i]/1000>=a[i]/100%10&&a[i]/100%10>=a[i]/10%10&&a[i]/10%10>=a[i]%10&&a[i]%2==1) ??b[cnt++]=a[i]; }?for(i=0;i<cnt-1;i++)??for(j=i+1;j<cnt;j++)???if(b[i]>b[j]) ?{? t=b[i];? ?b[i]=b[j]; b[j]=t;? }}20.已知數據文獻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<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){inti,j,t;?for(i=0;i<200;i++)?{?if(a[i]/1000<=a[i]/100%10&&a[i]/100%10<=a[i]/10%10>=0&&a[i]/10%10<=a[i]%10&&a[i]%2==0) b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++)?? if(b[i]>b[j])???{?? t=b[i];? ??b[i]=b[j]; ?b[j]=t;? }}21.已知數據文獻in.dat中存有300個四位數,并已調用讀函數ReadDat()把這些數存入數組a中,請編制一函數jsValue(),其功能是:求出千位數上的數加個位數上的數等于百位數上的數加十位數上的數的個數cnt,再把所有滿足此條件的四位數依次存入數組b中,然后對數組b的四位數按從小到大的順序進行排序,最后調用寫函數writeDat()把結果輸出到out.dat文獻。例如:6712,6+2=7+1,則該數滿足條件存入數組b中,且個數cnt=cnt+1。8129,8+9<>1+2,則該數不滿足條件忽略。部分源程序存在文獻prog1.c中。程序中已定義數組:a[300],b[300],已定義變量:cnt請勿改動主函數main()、讀函數ReadDat()和寫函數writeDat()的內容。#include<stdio.h>inta[300],b[300],cnt=0;jsValue(){inti,j,t; for(i=0;i<300;i++)?{?if(a[i]/1000+a[i]%10==a[i]/100%10+a[i]/10%10) b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++) ?if(b[i]>b[j])???{ ? t=b[i]; ? ?b[i]=b[j]; b[j]=t;? }}22.已知數據文獻in.dat(yī)中存有300個四位數,并已調用讀函數ReadDat(yī)()把這些數存入數組a中,請編制一函數jsValue(),其功能是:求出千位數上的數減百位數上的數減十位數上的數減個位數上的數大于零的個數cnt,再把所有滿足此條件的四位數依次存入數組b中,然后對數組b的四位數按從小到大的順序進行排序,最后調用寫函數writeDat()把結果輸出到out.dat文獻。例如:9123,9-1-2-3>0,則該數滿足條件存入數組b中,且個數cnt=cnt+1。9812,9-8-1-2>0,則該數不滿足條件忽略。部分源程序存在文獻prog1.c中。程序中已定義數組:a[300],b[300],已定義變量:cnt請勿改動主函數main()、讀函數ReadDat()和寫函數writeDat()的內容。#include<stdio.h>inta[300],b[300],cnt=0;jsValue(){inti,j,t;?for(i=0;i<300;i++)?{?if(a[i]/1000-a[i]/100%10-a[i]/10%10-a[i]%10>=0) ? b[cnt++]=a[i]; }?for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++)? ?if(b[i]>b[j])?? {? ? t=b[i]; b[i]=b[j]; ??b[j]=t; ??}}23.已知數據文獻in.dat中存有300個四位數,并已調用讀函數ReadDat(yī)()把這些數存入數組a中,請編制一函數jsValue(),其功能是:求出千位數上的數加百位數上的數等于十位數上的數加個位數上的數的個數cnt,再把所有滿足此條件的四位數依次存入數組b中,然后對數組b的四位數按從大到小的順序進行排序,最后調用寫函數writeDat(yī)()把結果輸出到out.dat文獻。例如:7153,7+1=5+3,則該數滿足條件存入數組b中,且個數cnt=cnt+1。8129,8+1<>2+9,則該數不滿足條件忽略。部分源程序存在文獻prog1.c中。程序中已定義數組:a[300],b[300],已定義變量:cnt請勿改動主函數main()、讀函數ReadDat()和寫函數writeDat()的內容。#include<stdio.h>inta[300],b[300],cnt=0;jsValue(){inti,j,t; for(i=0;i<300;i++)?{?if(a[i]/1000+a[i]/100%10==a[i]/10%10+a[i]%10)? b[cnt++]=a[i];?}?for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++)?? if(b[i]<b[j]) ??{ ? t=b[i]; ? ?b[i]=b[j]; ??b[j]=t; ? }}24.已知數據文獻in.dat中存有300個四位數,并已調用讀函數ReadDat()把這些數存入數組a中,請編制一函數jsValue(),其功能是:求出所有這些四位數是素數的個數cnt,再把所有滿足此條件的四位數依次存入數組b中,然后對數組b的四位數按從小到大的順序進行排序,最后調用寫函數writeDat()把結果輸出到out.dat文獻。例如:5591是素數,則該數滿足條件存入數組b中,且個數cnt=cnt+1。9812是非素數,則該數不滿足條件忽略。部分源程序存在文獻prog1.c中。程序中已定義數組:a[300],b[300],已定義變量:cnt請勿改動主函數main()、讀函數ReadDat(yī)()和寫函數writeDat()的內容。#include<stdio.h>inta[300],b[300],cnt=0;intisP(intm){inti;for(i=2;i<m;i++)if(m%i==0)return0;return1;}jsValue(){?inti,j,t;?for(i=0;i<300;i++) if(isP(a[i])) b[cnt++]=a[i];?for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++)? ?if(b[i]>b[j])?? { ???t=b[i];? ??b[i]=b[j];? b[j]=t; ? }}25.已知數據文獻in.dat中存有300個四位數,并已調用讀函數ReadDat(yī)()把這些數存入數組a中,請編制一函數jsValue(),其功能是:求出千位數上的數減百位數上的數減十位數上的數減個位數上的數大于零的個數cnt,再把所有滿足此條件的四位數依次存入數組b中,然后對數組b的四位數按從小到大的順序進行排序,最后調用寫函數writeDat()把結果輸出到out.dat(yī)文獻。例如:9123,9-1-2-3>0,則該數滿足條件存入數組b中,且個數cnt=cnt+1。9812,9-8-1-2>0,則該數不滿足條件忽略。部分源程序存在文獻prog1.c中。程序中已定義數組:a[300],b[300],已定義變量:cnt請勿改動主函數main()、讀函數ReadDat()和寫函數writeDat()的內容。#include<stdio.h>inta[300],b[300],cnt=0;jsValue(){inti,j,t;?for(i=0;i<300;i++)?{ if(a[i]/1000-a[i]/100%10-a[i]/10%10-a[i]%10>0)? ?b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++) ?for(j=i+1;j<cnt;j++)?? if(b[i]>b[j]) {? ??t=b[i];?? ?b[i]=b[j]; ??b[j]=t; ? }}26.在文獻in.dat中有200個正整數,且每個數均在1000至9999之間。函數ReadDat(yī)()讀取這200個數存放到數組aa中。請編制函數jsSort(),其函數的功能是:規(guī)定按每個數的后三位的大小進行升序排列,然后取出滿足此條件的前10個數依次存入數組bb中,假如后三位的數值相等,則按原先的數值進行降序排列。最后調用函數WriteDat()把結果bb輸出到文獻out.dat中。例:解決前60125099901270258088解決后90126012702580885099部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat(yī)()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>intaa[200],bb[10];voidjsSort(){inti,j,t;?for(i=0;i<10;i++) { for(j=i+1;j<200;j++)? if(aa[i]%1000>aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]<aa[j]) ? { ? t=aa[i];?? aa[i]=aa[j];?? ?aa[j]=t;? ?} ??bb[i]=aa[i];?}}27.在文獻in.dat中有200個正整數,且每個數均在1000至9999之間。函數ReadDat()讀取這200個數存放到數組aa中。請編制函數jsSort(),其函數的功能是:規(guī)定按每個數的后三位的大小進行降序排列,然后取出滿足此條件的前10個數依次存入數組b中,假如后三位的數值相等,則按原先的數值進行升序排列。最后調用函數WriteDat(yī)()把結果bb輸出到文獻out.dat中。例:解決前90125099601270258088解決后50998088702560129012注意:部分源程序已給出。請勿改動主函數main()、讀數據函數ReadDat(yī)()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>intaa[200],bb[10];voidjsSort(){inti,j,t;?for(i=0;i<10;i++)?{ ?for(j=i+1;j<200;j++)? if(aa[i]%1000<aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]>aa[j])?? {? ?t=aa[i];? ??aa[i]=aa[j];?? ?aa[j]=t;???} ? bb[i]=aa[i]; }}28.在文獻in.dat中有200組數據,每組有3個數,每個數均是三位數。函數ReadDat()讀取這200組數據存放到結構數組aa中,請編制函數jsSort(),其函數的功能是:規(guī)定在200組數據中找出條件為每組中的第二個數大于第一個數加第三個數的之和,其中滿足條件的組數作為函數jsSort()的返回值,同時把滿足條件的數據存入結構數組bb中,再對bb中的數據按照每組數據的第二個數加第三個之和的大小進行降序排列(第二個數加第三個數的和均不相等),排序后的結果仍重新存入結構數組bb中,最后調用函數WriteDat()把結果bb輸出到文獻out.dat中。部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>typedefstruct{intx1,x2,x3;}data;dataaa[200],bb[200];intjsSort(){ inti,cnt=0,j;?datach;?for(i=0;i<200;i++)? if(aa[i].x2>aa[i].x1+aa[i].x3)??{? ?bb[cnt]=aa[i]; ? cnt++;??}?for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++)???if(bb[i].x2+bb[i].x3<bb[j].x2+bb[j].x3)? ?{ ch=bb[i];? ? bb[i]=bb[j]; ??bb[j]=ch;? } returncnt;}29.在文獻in.dat中有200組數據,每組有3個數,每個數均是三位數。函數ReadDat()讀取這200組數據存放到結構數組aa中,請編制函數jsSort(),其函數的功能是:規(guī)定在200組數據中找出條件為每組中的第一個數大于第二個數加第三個數的和,其中滿足條件的組數作為函數jsSort()的返回值,同時把滿足條件的數據存入結構數組bb中,再對bb中的數據按照每組數據的第一個數加第三個之和的大小進行升序排列(第一個數加第三個數的和均不相等),排序后的結果仍重新存入結構數組bb中,最后調用函數writeDat()把結果bb輸出到文獻out.dat中。部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>typedefstruct{intx1,x2,x3;}data;dataaa[200],bb[200];intjsSort(){ inti,cnt=0,j;?datach;?for(i=0;i<200;i++)? if(aa[i].x1>aa[i].x2+aa[i].x3) { ??bb[cnt]=aa[i];? ?cnt++;? } for(i=0;i<cnt-1;i++)? for(j=i+1;j<cnt;j++)???if(bb[i].x1+bb[i].x3>bb[j].x1+bb[j].x3) ?{? ??ch=bb[i]; ? ?bb[i]=bb[j];? bb[j]=ch; }?returncnt;}30.函數ReadDat(yī)()實現從文獻IN.DAT中讀取一篇英文文章存入到字符串數組xx中,請編制函數SortCharA(),其函數的功能是:以行為單位對字符按從小到大的順序進行排序,排序后的結果仍按行重新存入字符串數組xx中,最后調用函數writeDat()把結果xx輸出到文獻OUT1.DAT中。例:原文:dAe,BfC.CCbbAA結果:,.ABCdefAACCbb原始數據文獻存放的格式是:每行的寬度均小于80個字符,含標點符號和空格。部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數writeDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>charxx[50][80];intmaxline=0;/*文章的總行數*/intReadDat(void);voidWriteDat(void);voidSortCharA(void){inti,j,k; chart; for(i=0;i<maxline;i++)? for(j=0;j<strlen(xx[i])-1;j++)???for(k=j+1;k<strlen(xx[i]);k++) ???if(xx[i][j]>xx[i][k])?? { t=xx[i][j]; ? xx[i][j]=xx[i][k];?? xx[i][k]=t;?? ?}}31.函數ReadDat(yī)()實現從文獻IN.DAT中讀取一篇英文文章存入到字符串數組xx中,請編制函數SortCharD(),其函數的功能是:以行為單位對字符按從大到小的順序進行排序,排序后的結果仍按行重新存入字符串數組xx中,最后調用函數writeDat()把結果xx輸出到文獻OUT2.DAT中。例:原文:dAe,BfC.CCbbAA結果:fedCBA.bbCCAA原始數據文獻存放的格式是:每行的寬度均小于80個字符,含標點符號和空格。部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數writeDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>charxx[50][80];intmaxline=0;/*文章的總行數*/intReadDat(void);voidWriteDat(yī)(void);voidSortCharD(void){inti,j,k;?chart;?for(i=0;i<maxline;i++)? for(j=0;j<strlen(xx[i])-1;j++) ? for(k=j+1;k<strlen(xx[i]);k++)? if(xx[i][j]<xx[i][k])? ?{?????t=xx[i][j];? ? xx[i][j]=xx[i][k];?? ? xx[i][k]=t;? ??}}32.函數ReadDat()實現從文獻in.dat中讀?。玻靶袛祿娣诺阶址當到Mxx中(每行字符串長度均小于80)。請編制函數jsSort(),其函數的功能是:以行為單位對字符串變量的下標為奇數的字符按其ASCII值從小到大的順序進行排序,排序后的結果仍按行重新存入字符串數組xx中,最后調用函數WriteDat()把結果xx輸出到文獻out.dat中。例如:位置01234567源字符串abcdefgh則解決后字符串ahcfedgb部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>charxx[20][80];voidjsSort(){?inti,j,t,k; for(k=0;k<20;k++)??for(i=1;i<strlen(xx[k])-1;i+=2) ??for(j=i+2;j<strlen(xx[k]);j+=2) ? if(xx[k][i]>xx[k][j])? ?{?? ? t=xx[k][i];?????xx[k][i]=xx[k][j];?? ?xx[k][j]=t; ? ?}}33.函數ReadDat()實現從文獻in.dat(yī)中讀取20行數據存放到字符串數組xx中(每行字符串長度均小于80)。請編制函數jsSort(),其函數的功能是:以行為單位對字符串按給定的條件進行排序,排序后的結果仍按行重新存入字符串數組xx中,最后調用函數WriteDat()把結果xx輸出到文獻out.dat中。條件:從字符串中間一分為二,左邊部分按字符的ASCII值降序排序,排序后左邊部分與右邊部分進行互換。假如原字符串長度為奇數,則最中間的字符不參與解決,字符仍放在原位置上。例如:位置012345678源字符串abcdhgfe123498765則解決后字符串hgfedcba876594321部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>charxx[20][80];voidjsSort(){inti,j,k,t,l;?for(k=0;k<20;k++) { l=strlen(xx[k]);??for(i=0;i<l/2-1;i++)? ?for(j=i+1;j<l/2;j++) ???if(xx[k][i]<xx[k][j]) ? { ?? ?t=xx[k][i]; xx[k][i]=xx[k][j];? ? xx[k][j]=t;? } ?for(i=0;i<l/2;i++) ?{???t=xx[k][i];? xx[k][i]=xx[k][i+(l+1)/2];???xx[k][i+(l+1)/2]=t; ?} }}34.函數ReadDat()實現從文獻in.dat中讀取20行數據存放到字符串數組xx中(每行字符串長度均小于80)。請編制函數jsSort(),其函數的功能是:以行為單位對字符串按給定的條件進行排序,排序后的結果仍按行重新存入字符串數組xx中,最后調用函數WriteDat()把結果xx輸出到文獻out.dat中。條件:從字符串中間一分為二,左邊部分按字符的ASCII值升序排序,排序后左邊部分與右邊部分進行互換。假如原字符串長度為奇數,則最中間的字符不參與解決,字符仍放在原位置上。例如:位置012345678源字符串dcbahgfe432198765則解決后字符串hgfeabcd876591234部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀函數ReadDat(yī)()和寫函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>charxx[20][80];voidjsSort(){inti,j,k,t,l;?for(k=0;k<20;k++) { ??l=strlen(xx[k]);??for(i=0;i<l/2-1;i++) for(j=i+1;j<l/2;j++)????if(xx[k][i]>xx[k][j]) ??{??? t=xx[k][i]; ?xx[k][i]=xx[k][j];?? xx[k][j]=t; ? }? for(i=0;i<l/2;i++) ?{ ?t=xx[k][i]; ??xx[k][i]=xx[k][i+(l+1)/2]; xx[k][i+(l+1)/2]=t; ?} }}35.函數ReadDat()實現從文獻in.dat中讀取20行數據存放到字符串數組xx中(每行字符串長度均小于80)。請編制函數jsSort(),其函數的功能是:以行為單位對字符串按給定的條件進行排序,排序后的結果仍按行重新存入字符串數組xx中,最后調用函數WriteDat()把結果xx輸出到文獻out.dat中。條件:從字符串中間一分為二,左邊部分按字符的ASCII值降序排序,右邊部分按字符的ASCII值升序排序。假如原字符串長度為奇數,則最中間的字符不參與排序,字符仍放在原位置上。例如:位置012345678源字符串abcdhgfe123498765則解決后字符串dcbaefgh432195678部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<string.h>#include<conio.h>charxx[20][80];voidjsSort(){inti,j,t,k,l; for(k=0;k<20;k++)?{? l=strlen(xx[k]);??for(i=0;i<l/2-1;i++) ?for(j=i+1;j<l/2;j++)?? ?if(xx[k][i]<xx[k][j])?? {?????t=xx[k][i]; ? ? xx[k][i]=xx[k][j]; ??xx[k][j]=t; ??}? for(i=(l+1)/2;i<l-1;i++)?? for(j=i+1;j<l;j++) if(xx[k][i]>xx[k][j])??? { ? t=xx[k][i]; ?? xx[k][i]=xx[k][j];? ??xx[k][j]=t;? ??}?}}36.已知在文獻IN.DAT中存有100個產品銷售記錄,每個產品銷售記錄由產品代碼dm(字符型4位),產品名稱mc(字符型10位),單價dj(整型),數量sl(整型),金額je(長整型)五部分組成。其中:金額=單價*數量計算得出。函數ReadDat()是讀取這100個銷售記錄并存入結構數組sell中。請編制函數SortDat(),其功能規(guī)定:按產品名稱從大到小進行排列,若產品名稱相等,則按金額從大到小進行排列,最終排列結果仍存入結構數組sell中,最后調用函數WriteDat()把結果輸出到文獻OUT5.DAT中。部分源程序存在文獻prog1.c中。請勿改動主函數main()、讀數據函數ReadDat()和輸出數據函數WriteDat()的內容。#include<stdio.h>#include<mem.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineMAX100typedefstruct{chardm[5];/*產品代碼*/charmc[11];/*產品名稱*/intdj;/*單價*/intsl;/*數量*/longje;/*金額*/}PRO;PROsell[MAX];voidReadDat();voidWriteDat();voidSortDat(yī)(){ inti,j,k; PROt;?for(i=0;i<MAX-1;i++) ?for(j=i+1;j<MAX;j++)??{?? k=strcmp(sell[i].mc,sell[j].mc); if(k<0||k==0&&sell[i].je<sell[j].je)?? {? t=sell[i];???sell[i]=sell[j];?? sell[j]=t; ??} }}voidmain(){memset(sell,0,sizeof(sell));ReadDat();SortDat();WriteDat();}voidReadDa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年設備監(jiān)理師考試題庫含答案【預熱題】
- 家政服務衛(wèi)生安全規(guī)定
- 花藝圓形花束課程設計
- 電子行業(yè)產品知識培訓總結
- 項目立項申請計劃
- 文化藝術行業(yè)市場總結
- 銷售業(yè)績評估方法培訓
- 青少年法治教育工作安排計劃
- 出版合同范本(2篇)
- 2024施工安全生產承諾書范文(34篇)
- 2025年1月普通高等學校招生全國統一考試適應性測試(八省聯考)英語試題
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應用實踐指導材料之21:“7支持-7.5成文信息”(雷澤佳編制-2025B0)
- 2024-2025學年冀人版五年級第一學期期末科學試題(含答案)
- 部編版五年級語文上冊快樂讀書吧測試題及答案
- 2023-2024年6月廣東省普通高中學業(yè)水平考試化學試題及答案
- 黑龍江省哈爾濱市香坊區(qū)2023-2024學年八年級上學期期末數學試題
- 《S7-1500PLC應用技術》 課件 第1、2章 PLC概述、S7-1500 PLC硬件系統
- Unit 6 Give Me Liberty or Give Me Death
- 施工進度計劃橫道圖含資源動態(tài)圖(道路、橋梁、排水、防護工程)
- 助念往生儀規(guī)
- Les Miserables 音樂劇《悲慘世界》歌詞
評論
0/150
提交評論