资源预览内容
第1页 / 共45页
第2页 / 共45页
第3页 / 共45页
第4页 / 共45页
第5页 / 共45页
第6页 / 共45页
第7页 / 共45页
第8页 / 共45页
第9页 / 共45页
第10页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1、 请编写函数fun,函数的功能是: 移动字符串中的内容,移动的规则如下: 把第1到第m个字符, 平移到字符串的最后, 把第m+1到最后的字符移到字符串的前部。 例如, 字符串中原有的内容为: ABCDEFGHIJK, m的值为3, 则移动后, 字符串中的内容应该是: DEFGHIJKABC。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 #include #include int NONO(void);#define N 80 void fun1(char *w) /* 本函数的功能是将字符串中字符循环左移一个位置 */ int i; char t; t=w0; for(i=0;istrlen(w)-1;i+) wi=wi+1; wstrlen(w)-1=t; void fun(char *w, int m) /*可调用fun1函数左移字符 */ int i; for(i=0;im;i+) fun1(w); int main(void) char aN= ABCDEFGHIJK; int m; printf(The original string:n);puts(a); printf(nnEnter m: );scanf(%d,&m); fun(a,m); printf(nThe string after moving:n);puts(a); printf(nn);NONO(); return 0;int NONO(void) /* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */ FILE *rf, *wf ; char aN ; int m, i ; rf = fopen(./01/in.dat,r) ; wf = fopen(./01/out.dat,w) ; for(i = 0 ; i 10 ; i+) fscanf(rf, abc%d %s, &m, a) ; fun(a, m) ; fprintf(wf, %sn, a) ; fclose(rf) ; fclose(wf) ;return 1; 2、学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中, 请编写函数fun,它的功能是: 把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。 例如,输入的分数是60 69, 则应当把分数在60到69的学生数据进行输出,包含60分和69分的学生数据。主函数中将把60放在low中,把69放在heigh中。 注意: 部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include #define N 16typedef struct char num10; int s; STREC;int fun( STREC *a,STREC *b,int l, int h ) int i,j=0; for(i=0;i=l & ai.s=h) bj=ai; j+; return j;int main(void) STREC sN=GA005,85,GA003,76, GA002,69,GA004,85,GA001,96, GA007,72,GA008,64,GA006,87, GA015,85,GA013,94,GA012,64, GA014,91,GA011,90,GA017,64, GA018,64,GA016,72;STREC hN,tt;FILE *out ;int i,j,n,low,heigh,t;printf(Enter 2 integer number low & heigh : );scanf(%d%d, &low,&heigh);if ( heigh low )t=heigh;heigh=low;low=t;n=fun( s,h,low,heigh );printf(The students data between %d-%d :n,low,heigh);for(i=0;in; i+) printf(%s %4dn,hi.num,hi.s);printf(n);out = fopen(./02/out.dat,w) ;n=fun( s,h,80,98 );fprintf(out,%dn,n);for(i=0;in-1;i+) for(j=i+1;jhj.s) tt=hi ; hi=hj; hj=tt; for(i=0;in; i+) fprintf(out,%4dn,hi.s);fprintf(out,n);fclose(out);return 1;3、已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数 fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。 注意: 部分源程序存在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include int NONO(void);#define N 10 typedef struct char num10; int s; STU; int fun( STU a, STU *s ) int i; *s=a0; for(i=1;iN;i+) if(ai.ss) *s=ai; return 1; int main (void) STU aN= A01,81,A02,89,A03,66, A04,87,A05,77,A06,90, A07,79,A08,61,A09,80, A10,71 , m ; int i; printf(* The original data *n); for ( i=0; i N; i+ ) printf(No = %s Mark = %dn, ai.num,ai.s); fun ( a, &m ); printf (* THE RESULT *n); printf (The lowest : %s , %dn,m.num, m.s); NONO( ); return 1;int NONO(void) /* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ FILE *rf, *wf ; STU aN, m ; int i ; rf = fopen(./03/in.dat,r) ; wf = fopen(./03/out.dat,w) ; for(i = 0 ; i 10; i+) fscanf(rf, %s %dn, ai.num, &ai.s) ; fun(a, &m) ; fprintf (wf, The lowest : %s, %dn, m.num, m.s) ; fclose(rf) ; fclose(wf) ; return 1;4、请编写一个函数fun, 其功能是: 将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母, 则不转换)。 例如, 若输入abc4EFg,则应输出aBc4EFg。 注意: 部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 #include #include void fun( char *ss ) int i=1; while(ssi-1 & ssi) if(ssi=a & ssi=z) ssi+=A-a; i+=2; void main( void ) char tt51; printf( nPlease enter an character string within 50 characters:n ); gets( tt ); printf( nnAfter changing, the stringn %s, tt ); fun(tt) ; printf( nbecomesn %s, tt ); NONO(); NONO() /* 请在此函数内打开文件,输入测试数据,调用 fun 函数, 输出数据,关闭文件。 */ char tt51, ch; FILE *rf, *wf ; int len, i=0 ; rf = fopen(c:testin.dat,r) ; wf = fopen(c:testout.dat,w) ; while(i 10) fgets( tt, 50, rf ); len = strlen(tt) - 1 ; ch = ttlen ; if(ch = n | ch = 0x1a) ttlen = 0 ; fun(tt); fprintf( wf, %sn, tt ); i+ ; fclose(rf) ; fclose(wf) ; 5、请编一个函数fun,函数的功能是使实型数保留2位小数,并对第三位进行四舍五入 (规定实型数为正数)。 例如:实型数为 1234.567, 则函数返回 1234.57; 实型数为 1234.564, 则函数返回 1234.56。 注意: 部分源程序存在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include int NONO(void);float fun ( float h ) long i=h*1000;if(i%105) return (i/10)/100.0;else return
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号