|
|
条件:从字符串中间一分为二,左边部分按字符的ASCII值升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。
void jsSort()
{
int i,strl,half,j,k;
char ch;
for(i=0;i<20;i++) /*行循环*/
{strl=strlen(xx[i]); /*每行长度*/
half=strl/2;
for(j=0;j {ch=xx[i][j]; /*每次将最小数赋给xx[i][j]*/ xx[i][j]=xx[i][k]; xx[i][k]=ch; } for(j=half-1,k=strl-1;j>=0;j--,k--) {ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } } } 4题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 条件:从字符串中间一分为二,左边部分按字符的ASCII值降序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。 void jsSort() { int i,strl,half,j,k; char ch; for(i=0;i<20;i++) {strl=strlen(xx[i]); half=strl/2; for(j=1;j k=j-1; while((k>=0)&&(ch>xx[i][k])) {xx[i][k+1]=xx[i][k]; k--; } xx[i][k+1]=ch; } for(j=half-1,k=strl-1;j>=0;j--,k--) {ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } } } 6题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 条件:从字符串中间一分为二,左边部分按字符的ASCII值降序排序,右边部分按字符的ASCII值升序排序。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。 void jsSort() { int i,strl,half,j,k,p; char ch; for(i=0;i<20;i++) {strl=strlen(xx[i]); half=strl/2; for(j=0;j xx[i][j]=xx[i][k]; xx[i][k]=ch; } if(strl%2) half++; /* Must to note the order line! */ for(j=half;j for(k=j;k ch=xx[i][j];xx[i][j]=xx[i][p];xx[i][p]=ch; } } 12题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 void jsSort() { int i,j,k,strl; char temp; for(i=0;i<20;i++) { strl=strlen(xx[i]); for(k=1;k { temp=xx[i][k]; xx[i][k]=xx[i][j]; xx[i][j]=temp; } } } 26题 下列程序的功能是:求出ss字符串中指定字符c的个数,并返回此值。请编写函数int num(*char ss,char c)实现程序要求,最后调用函数readwriteDat()把结果输出到文件out.dat中。 (注:大小写字母有区别) int num(char *ss,char c) { int i=0; while(*ss!=0) if(*ss++==c) i++; return i; } 29题 函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数SortCharD(),其函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT2.DAT中。 void sortchard(void) { int i,j,k,strl; char ch; for(i=0;i for(j=0;j xx[i][j]=xx[i][k]; xx[i][k]=ch; } } } 71、函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数SORTCHARA(),其函数功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DATK . void sortcharA(void) { int i,j,k,strl; char ch; for(i=0;i for(j=0;j {ch=xx[i][k]; xx[i][k]=xx[i][j]; xx[i][j]=ch; } } } 72、下列程序的功能是:把S字符串中的所有字符左移一个位置,串中的第一个字符移到最后.请编写函数CHG(CHAR *S)实现程序要求,最后调用函READWRITEDAT()把结果输出到OUT.DAT文件中. void chg(char *s) { int i=strlen(s); char c=*s; strcpy(s,s+1); *(s+i-1)=c; *(s+i)='\0'; } 74、下列程序的功能是:统计在TT字符串中'A'到'Z'26个字母各自现的次数,并存入PP数组.请编写函数CNT(CHAR *TT,INT PP[])实现程序的要求,最后调用函数READWRITEDAT()把结果输出到文件OUT.DAT中.(仅统计小写字母.) void cnt(char *tt, int pp[]) { int i; for(i=0;i<26;i++) /*数组初始化*/ pp[i]=0; while(*tt) {if(*tt>='a'&&*tt<='z') pp[*tt-'a']++; tt++; } } 084题 函数loop(s,m,n,str)对长为n的字符串str,从第s个字符开始的间隔为m的部分字符进行循环左移,即str[s]←str[s+m]←...←str[s+km]←...←str[s](k为正整数)且当字符位置s+k*m大于等于n时,要求用s+k*m-n作新的字符位置。要求编写此函数实现其功能,最后调用函数WriteDat()把结果输出到文件out.dat中。 Viod Loop(int s,int m,int n,char str[]) { int cuur,last,i=0; char ch; last=s; ch=str[s]; while(++i) { cuur=last; last=(s+i*m)%n; if(last>=s&&s+i*m>n) break; str[cuur]=str[last]; } str[cuur]=ch; } 090题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 void jsSort() { int i,j,k,strl; char ch; for(i=0;i<20;i++) { strl=strlen(xx[i]); for(j=1;j ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } } } 096题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 条件:从字符串中间一分为二,左边部分按字符的ASCII值升序排序,右边部分按字符的ASCII值降序排序。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。 void jsSort() { int i,j,k,strl; char ch; for(i=0;i<20;i++) { strl=strlen(xx[i]); for(j=0;j { ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } for(j=(strl+1)/2;j ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } } } 098题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 条件:从字符串中间一分为二,右边部分按字符的ASCII值降序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。 void jsSort() { int i,j,k,strl; char ch; for(i=0;i<20;i++) { strl=strlen(xx[i]); for(j=(strl+1)/2;j ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } for(j=0;j ch=xx[i][j]; xx[i][j]=xx[i][(strl+1)/2+j]; xx[i][(strl+1)/2+j]=ch; } } } 100题 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。 条件:从字符串中间一分为二,右边部分按字符的ASCII值升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。 void jsSort() { int i,j,k,strl; char ch; for(i=0;i<20;i++) { strl=strlen(xx[i]); for(j=(strl+1)/2;j { ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } for(j=0;j ch=xx[i][j]; xx[i][j]=xx[i][(strl+1)/2+j]; xx[i][(strl+1)/2+j]=ch; } } }