2012年3月2c上机复习108题_第1页
2012年3月2c上机复习108题_第2页
2012年3月2c上机复习108题_第3页
2012年3月2c上机复习108题_第4页
2012年3月2c上机复习108题_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

类型一:调整一个数的个、十、百、千位 1.请编写函数 fun,其功能是:将两个两位数的正整数 a、b 合并形成一个整数放在 c 中。合并的方式是: 将 a 数的十位和个位数依次放在 c 数的千位和十位 上,b 数的十位和个位数依次放在 c 数的百位和个位 上。例如,当 a=45,b=12,调用该函数后 c=4152。 *c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10); STYPE FILE fp for( i=0; iscorei a char *fun(char (*sq)M) return sp; 7.请编写函数 fun,其功能是:将两个两位数的正整数 a、b 合并形成一个整数放在 c 中。合并的方式是: 将 a 数的十位和个位数依次放在 c 数的百位和个位 上,b 数的十位和个位数依次放在 c 数的千位和十位 上。例如,当 a=45,b=12,调用该函数后 c=1425。 *c=(b/10)*1000+(a/10)*100+(b%10)*10+(a%10); 0 x t+ int i,s1; s后面是小写的 L ti = ssl-i-1; 8.请编写函数 fun,其功能是:将两个两位数的正整数 a、b 合并形成一个整数放在 c 中。合并的方式是: 将 a 数的十位和个位数依次放在 c 数的千位和十位 上,b 数的十位和个位数依次放在 c 数的个位和百位 上。例如,当 a=45,b=12,调用该函数后 c=4251。 *c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10); 1 s i*10 int fun(int n,int xxM) printf(“%d “,xxij); 类型二:与*号有关的操作 2 9.请编写函数 fun,它的功能是 :将字符串中的前导* 号全部删除,中间和尾部的*号不删除。 删除前导*号 int j=0; char *p = a ; while(*p = *) p+ ; while(*p) aj+ = *p ; p+; aj=0 ; N tij tji #define FU(m,n) (m)/(n) return(value); 10.请编写函数 fun,它的功能是 :除了尾部的*号之外, 将字符串中其他*号全部删除。形参 p 已指向字符 串中最后的一个字母。 除尾部*号,其余*删除 char *q=a; int j=0; while(*q char *q=a; while(*q char *p=a; while(*p) if(*p != *) aj+=*p ; p+ ; aj=0; 1 j+ j t=a;a=b;b=t; return(b); 13.请编写函数 fun,它的功能是 :将字符串尾部的*号 全部删除,前面和中间的*号不删除。 删除串尾*号 char *p = a ; while(*p) p+ ; p- ; while(*p = *) p- ; p+ ; *p = 0 ; N i -1 a2=k/10; return i; 14.请编写函数 fun,它的功能是 :除了字符串前导的* 号之外,将串中其他*号全部删除。 除前导*外其他删除* if(ai != *) ak+=ai; i+; N k ssi int k=0; while( *p | *q ) 15.请编写函数 fun,它的功能是 :只删除字符串前导 和尾部的*号,串中字母之间的*号都不删除。 删除前导和尾部* char *p=a ; int j=0,len=0; while(*p) p+; len+; while(j maxlen) maxlen = strlen(ai) ; k = i ; N i i+1 aai=m%k; printf(“%d“,aai-1); 类型三:与下标或 ASCII 码有关 20.请编写一个函数 fun,它的功能是 :将 ss 所指字符 串中所有下标为奇数位置上的字母转换为大写(若 该位置上不是字母,则不转换)。 下标奇数位置子母改大写 int i ; for(i = 1 ; i = a int i = 0 ; while(*p) if(i % 2) 30.请编写函数 fun,该函数的功能是 :删去一维数组 中所有相同的数,使之只剩一个。 删除一维数组相同的数 int i, j = 1, k = a0 ; for(i = 1 ; i 0) else if(k=0) 34.请编写函数 fun(int aN,int n),该函数的功能是: 使数组右上半三角元素中的值乘以 m。 右上三角元素同乘 m int i, j; for(i = 0 ; i ttji) min=ttji ; k = j ; ppi = ttki ; *std stdi.age void fun ( int*a, int*b ) t=*b;*b=*a;*a=t; 37.请编写一个函数 fun,它的功能是 :求出个 2M 整型二维数组中最大元素的值,并将此值返回调用函 数。 求二维数组中最大元素的值 int i, j, max=a00; for(i=0; i 2*i+1 double fun (int n) s = s + (double)a / b; 38.编写程序,实现矩阵(3 行 3 列) 的转置(即行列互换) 。 矩阵转置 int i,j,arr33 ; memcpy(arr, array, 9*sizeof(int) ; for(i = 0 ; i next p-next p=h-next; p=p-next; 41.请编写函数 fun,该函数的功能是 :将 M 行 N 列的 二维数组中的字符数据,按列的顺序依次放到一个字 符串中。 按列顺序 wshwshwsh for(j = 0 ; j upfst(char *p) 43请编写函数 fun,函数的功能是求出二维数组周 边元素之和,作为函数值返回。 二维数组周边元素之和 int tot = 0, i, j ; for(i = 0 ; i next; double av=0.0; int n = 0 ; while(p!=NULL) av = av + p-s ; p=p-next; n+; av /= n ; return av ; char chave = a-ave + a-si ; a-ave /= N ; ai aj aj switch(g) case 1: case 2:return 1; 48.请编写函数 fun,该函数的功能是 :找出成绩最高 的学生记录。 找出成绩最高学生纪录(规定只有 一个最高分) int i, max = a0.s, j = 0; for(i = 1 ; i s; STREC *p; p=h-next; while(p) if(p-smax ) max=p-s; p=p-next; return max; fp = fp n=strlen(aa) ; ch=aai; 52请编写函数 fun,它的功能是 :将低于平均分的人 数作为函数值返回,将低于平均分的分数放在 below 所指的数组中。 低于平均分的人作为函数值返回 float av=0.0 ; int i, j=0 ; for(i=0; iscorei) belowj+=scorei; return j; j 0 i+ for(i=2; i t) b(*n)+ = ai ; return t ; -sno -name for(i = 0 ; i ai.s) j = 0 ; bj+ = ai ; min = ai.s ; else if(min = ai.s) bj+ = ai ; return j ; struct student a.scorei if(p=n) return -1; 8 if( fabs(x1-x0)0.00001 ) ai=ai+1; 55.请编写函数 fun,该函数的功能是 :找出成绩最低 的学生记录,通过形参返回主函数(规定只有一个最 低分)。 找出成绩最低学生纪录 int i, min = a0.s, j = 0; for(i = 1 ; i ai.s) j = i ; min = ai.s ; *s = aj ; 0 xi/N j+ double fun(int m) for( i = 100;i 0) 57.请编写函数 fun,它的功能是 :函数返回指定学号 的学生数据,指定的学号在主函数中输入。 返回指定学号学生数据 STREC c ; int i ; c.num0 = 0 ; c.s = -1 ; for(i = 0 ; i = l char *p=s, *q=t; for(i=0;*p i+) p+; q+; if(*p = 0 if(*p) return s ; else return t ; next t-data t fun (char *a) printf(“%c“ ,*a) ; 60.编写函数 fun,该函数的功能是 :从字符串中删除 指定的字符。同一字母的大、小写按不同字符处理。 删除给定的字符 char *p = s ; int i = 0 ; while(*p) if(*p != c) si+ = *p ; p+ ; si = 0 ; k len ssij result *=n-; result 9 61.请编写函数 fun,它的功能是 :求出 ss 所指字符串 中指定字符的个数,并返回此值。 求 ss 指定字符个数 int cnt = 0 ; char *p = ss ; while(*p) if(*p = c) cnt+ ; p+ ; return cnt ; j+ si=t1i j for (j = i + 1; j = a 64.请编写函数 fun,该函数的功能是 :统计一行字符 串中单词的个数,作为函数值返回。 统计一行串中单词个数 int k = 1 ; while(*s) if(*s = ) k+ ; s+ ; return k ; filename fp fp p=(NODE *)malloc(sizeof(NODE); return h; 65.请编写函数 fun,该函数的功能是 :将放在字符串 数组中的 M 个字符串(每串的长度不超过 N),按顺序 合并组成一个新的字符串。 M 个字符串合并成新串 for(i = 0 ; i next; p=p-next; 67.编写一个函数 fun,它的功能是 :实现两个字符串 的连接(不使用库函数 strcat),即把 p2 所指的字符串 连接到 p1 所指的字符串后。 实现两个字符串连接 char *p=p1; while(*p)p+; while(*p2) *p+=*p2+; *p=0; 0 10*x n/10 *t=0; if(d%2!=0) 68.请编写一个函数,用来删除字符串中的所有空格。 删除字符串中所有空格 char *p = str ; int i = 0 ; while(*p) if(*p != ) stri+ = *p ; p+ ; stri = 0 ; 0 | 1 t-=1.0/i; return t; 10 69请编一个函数 fun(char *s),该函数的功能是把 字符串中的内容逆置。 字符串逆置 strrev( s) ; i+1 k=j t void fun(char *str, char ch) if(*str!=ch) str1 = 0; 70.请编写一个函数 fun,它的功能是 :将一个数字字 符串转换为一个整数 -1234 数字字符串转换为整数 while(*p) x = x*10-48+(*p+); 10 0 x if (n=0) result *= n-; 71 功能是:移动字符串中的内容 ,移动的规则如下: 把 第 1 到第 m 个字符,平移到字符串的最后 ,把第 m+1 到最后的字符移到字符串的前部。 1 第 m 个字符移到串后 int i,j; char t; for(i=1;i0.000001); return x1; i+ m m while (high = 2) return sum; x n fabs(t) for(i=1; i1 p=1.0*jc(m)/jc(n)/jc(m-n) ; return p; *s s+ n int j, c=0; float xa=0.; if (xj )=xa) 81.编写函数 fun,它的功能是:计算并输出下列级数 和:S=1/1*2+1/2*3+.+1/n(n+1) n=10 时,函数值为 0.909091。 double s = 0.0 ; int i ; for(i = 1 ; i =eps) pi+=s; t=n/(2*n+1); s*=t; n+; pi=pi*2; return pi; 0 n t*t for(i = 0;stri;i+) if (substrk+1=0) 84. 请编写函数 fun,其功能是:计算并输出下列多项 式值:s=1+1/(1*2)+1/(1*2*3)+1/(1*2*3.*50) 例如,若主函数从键盘给 n 输入 50 后,则输出为 S=1.718282。 double t,sn=1.0; int i,j; for(i=1;i (i/2) aak+ = i; a0i =t) xxj+=t; t+; s - return 0 double fun(int n) c = a; a += b; b = c; 95请编写一个函数 unsigned fun(unsigned w),w 是 一个大于 10 的无符号整数,若 w 是 n(n2)位的整数, 则函数求出 w 的后 n-1 位的数作为函数值返回 5923=923 if(w10000) w %= 10000 ; else if(w1000) w %= 1000 ; else if(w100) w %= 100 ; else if(w10) w %=10 ; return w ; tt tt.scorei std m=i; if(akam) m=k; 96.请编写函数 fun,其功能是:计算并输出给定 10 个 数的方差: 方差 S=1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论