




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、功能:将主函数中输入的字符串反序存放。例如:输入字符串“abcdefg”,则应输出“gfedcba”。 int i,j; char c;for(i=0,j=n-1;i<j;i+,j-) /*或者for(i=0,j=n-1;i<n/2;i+,j-)*/c=*(str+i);*(str+i)=*(str+j);*(str+j)=c;功能:判断m是否为素数。答案: int i,k=1; if(m<=1) k=0; for(i=2;i<m;i+) if(m%i=0) k=0; return k;功能:计算并输出给定整数的所有因子之积(包括自身)。 规定这个整数的值不大于50。答
2、案: long s=1,i; for(i=2;i<=n;i+) if(n%i=0)s=s*i; return s;功能:产生20个30,120上的随机整数放入二维数组 a54中, 求其中的最小值。答案: int i,j,s; s=a00; for(i=0;i<5;i+) for(j=0;j<4;j+) if(s>aij)s=aij; return(s);功能:将两个两位数的正整数a、b合并形成一个整数放在 c中。合并的方式是:将a数的十位和个位数依次放 在c数的百位和个位上, b数的十位和个位数依次放 在c数的十位和千位上。 例如:当a45,b=12。调用该函数后,c=
3、2415。 答案: *c=a/10*100+a%10+b/10*10+b%10*1000;功能:编写函数判断一个整数能否同时被3和5整除,若能 则返回值为1,否则为0。调用该函数求出15300之 间能同时被3和5整除的数的个数。答案: if(n%3=0&&n%5=0) return(1); return(0);功能:编写函数fun求1!+2!+3!+ +n!的和,在main函 数中由键盘输入n值,并输出运算结果。请编写fun 函数。例如:若n值为5,则结果为153。答案: int i;float f=1,s=0;for(i=1;i<=n;i+) f=f*i; s=s+f;
4、 return s;功能:对某一正数的值保留2位小数,并对第三位进行四舍 五入。答案: int i;i=(int)(h*1000)%10;if(i>=5)return(int)(h*100+1)/100.0;elsereturn(int)(h*100)/100.0;功能:编写函数fun将一个数组中的值按逆序存放,并在 main()函数中输出。例如:原来存顺序为8,6,5,4,1。要求改为:1,4,5,6,8。答案: int i,t; for(i=0;i<n/2;i+) t=arri; arri=arrn-1-i; arrn-1-i=t; 功能:编写函数fun求一个字符串的长度,在m
5、ain函数中 输入字符串,并输出其长度。答案: char *p;1 / 7int n=0;p=p1;while(*p+) n+; return n;功能:求出二维数组周边元素之和,作为函数值返回。二 维数组的值在主函数中赋予。答案: int s=0; int i,j; for(i=0;i<M;i+) s=s+ai0+aiN-1; for(j=1;j<N-1;j+) s=s+a0j+aM-1j; return s;功能:判断整数x是否是同构数。若是同构数,函数返回1; 否则返回0。x的值由主函数从键盘读入,要求不大 于100。说明:所谓“同构数”是指这样的数,这个数出现在它的 平方数
6、的右边。例如:输入整数5,5的平方数是25,5是25中右侧的数,所 以5是同构数。答案: int k; k=x*x; if(k%10=x)|(k%100=x) return 1; else return 0;功能:找出一个大于给定整数且紧随这个整数的素数,并 作为函数值返回。答案: int i,k;for(i=n+1;i+)for(k=2;k<i;k+)if(i%k=0)break;if(k=i)return(i); 功能:编写函数fun求sum=d+dd+ddd+dd.d(n个d), 其中d为1-9的数字。例如:3+33+333+3333+33333(此时d=3,n=5),d和n在主函
7、 数中输入。答案: long int s=0,t=0; int i; for(i=1;i<=n;i+) t=t+d; s=s+t; d=d*10; return s;功能:求n阶方阵主、副对角线上的元素之积。答案:int i,j; float t=1; for(i=0;i<N;i+) for(j=0;j<N;j+) if(i=j|i+j=N-1) t=t*arrij; return(t);功能:编写函数求3!+6!+9!+12!+15+18!+21!。答案: int i,j; float t,s=0; for(i=3;i<=n;i=i+3) t=1; for(j=1;j
8、<=i;j+) t=t*j; s=s+t; return(s);功能:编写函数fun(str,i,n),从字符串str中删除第i个 字符开始的连续n个字符(注意:str0代表字符串 的第一个字符)。while(stri+n-1) stri-1=stri+n-1; i+; stri-1='0'功能:编写程序打印如图1所示图形。 * * * * * *要求:要求使用abs()。答案: for(m=-i;m<=i;m+) for(n=0;n<abs(m);n+) printf(" "); for(n=0;n<7-2*abs(m);n+) p
9、rintf("*"); printf("n"); 功能:编写程序, 求矩阵(3行3列)与2的乘积 int i,j; for(i=0; i < 3; i+) for(j=0; j < 3; j+) arrayij=arrayij*2功能:输入一个字符串,过滤此串,只保留串中的字母字 符,并统计新生成串中包含的字母个数。例如:输入的字符串为ab234$df4,新生成的串为abdf 。 int i,j;for(i=0,j=0;*(ptr+i)!='0'i+)if(*(ptr+i)<='z'&&
10、*(ptr+i)>='a'|*(ptr+i)<='Z' && *(ptr+i)>='A')*(ptr+j)=*(ptr+i);j+;*(ptr+j)='0'return(j);功能:找出一批正整数中的最大的偶数。答案: int i,amax=-1; for(i=0;i<n;i+) if(ai%2=0) if (ai>amax) amax=ai; return amax;功能:对长度为7个字符的字符串,除首、尾字符外,将其 余5个字符按降序排列。例如:原来的字符串为CEAedca,排序后
11、输出为CedcEAa。答案: int i,j; char t; for(i=1;i<num-1;i+) for(j=i+1;j<num-1;j+) if(si<sj) t=si;si=sj;sj=t;题目:输入华氏温度求摄氏温度。转换公式为 c=5/9(f-32), 输出结果取两位小数。答案: float n; n=(5.0/9.0)*(m-32); return n;功能:编写程序求无理数e的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+.+1/n! 当1/n!<0.000001时e=2.718282。答案: long int j; int i,k;
12、double e,jc; i=1; e=0.0; jc=1.0; while(jc>=0.000001) e=e+jc; j=1; for(k=1;k<=i;k+) j=j*k; jc=1.0/j; i+; return e;功能:将从键盘上输入的每个单词的第一个字母转换为 大写字母,输入时各单词必须用空格隔开,用. 结束输入。 if (*c= ' ') return 1;else if(status && *c <= 'z' && *c >= 'a')*c += 'A' -
13、 'a'return 0;例如:给a和b分别输入:60和65,输入为:a=65 b=60答案: int t; t=*a;*a=*b;*b=t;功能:从字符串中删除指定的字符。同一字母的大、小写 按不同字符处理。例如:若程序执行时输入字符串为:turbocandborlandc+ 从键盘上输入字符:n,则输出后变为:turbocadbo rladc+,如果输入的字符在字符串中不存在,则字 符串照原样输出。 答案: char *q=s; for(; *q; q+) if(*q != c) *(s+)=*q; *s=0;功能:删除所有值为y的元素。数组元素中的值和y的值由 主函数通过
14、键盘输入。答案: int i,j; for(i=0;i<*n;) if(bbi=y) for(j=i;j<*n;j+) bbj=bbj+1; *n=*n-1; else i+; 功能:输入2个学生3门课的成绩,计算学生成绩平均分, 课程平均分和最高分. 例如:输入2名学生3门课的成绩分别为92,87,68,56, 92,84 则 学生1平均分:82.33 学生2平均分:77.33 课程1平均分:74.00 课程2平均分:89.50 课程3平均分:76.00 最高分为:92答案:int i,j;float sum; for(i=0;i<2;i+) /*计算第i个学生平均分*/
15、sum=0; for(j=0;j<3;j+) sum=sum+scoreij; StuAgvi=sum/3; for(j=0;j<3;j+) /*计算第j门课的平均分*/ sum=0; for(i=0;i<2;i+) sum=sum+ score ij; CouAgvj=sum/2; Max=score00; for(i=0;i<2;i+) for(j=0;j<3;j+) if(Max<=scoreij) Max=scoreij; return ;功能:求一个大于10的n位整数的后n-1位的数,并作为函 数值返回。答案: int n=0;int i=1;wh
16、ile(w>10)n=n+i*(w%10);w/=10;i*=10;return n;功能:根据整型参数n,计算如图公式的值。double a=1;int i;for(i=1;i<n;i+)a=1.0/(1+a);return a;-功能:若x、y为奇数,求x到y之间的奇数和;若x、y为偶 数,则求x到y之间的偶数和。答案:- int i,s=0; for(i=x;i<=y;i+=2) s=s+i; return s;-功能:将两个两位数的正整数a、b合并形成一个整数放在c 中。合并的方式是:将a数的十位和个位数依次放在 c数的千位和十位上, b数的十位和个位数依次放在 c数
17、的个位和百位上。 例如:当a45,b=12。调用该函数后,c=4251。 *c=a/10*1000+a%10*10+b/10+b%10*100;功能:用辗转相除法求两个整数的最大公约数。 int r,t; if(n<m) t=n;n=m;m=t; r=n%m; while(r!=0) n=m;m=r;r=n%m; return(m);功能:将字符串中的小写字母转换为对应的大写字母, 其它字符不变。int i; for(i=0;stri!='0'i+) if(stri>='a' && stri<='z') stri
18、=stri-32;功能:统计出若干个学生的平均成绩,最高分以及得最高 分的人数。例如:输入10名学生的成绩分别为92,87,68,56,92, 84,67,75,92,66,则输出平均成绩为77.9, 最高分为92,得最高分的人数为3人。int i;float sum=0,ave; Max=array0;for(i=0;i<n;i+) if(Max<array i) Max=array i; sum=sum+array i; ave=sum/n; for(i=0;i<n;i+) if(array i=Max) J+;return(ave);题目:从键盘输入一个大写字母,要求改
19、用小写字母输出。答案: c=c+32; return c;功能:编写main程序调用函数fact求解从m个元素选n个元 素的组合数的个数。计算公式是: 组合数m!/(n!.(m-n)!)。要求:m不能小于n,否则 应有容错处理。说明:函数fact(x)的功能是求x!。while(m<n) printf("m和n输入错!请重新输入:n"); scanf("%d%d",&m,&n); zhsgs=fact(m)/(fact(n)*fact(m-n);功能:用函数实现字符串的复制, 不允许用strcpy()函数。int i; for(i=
20、0;str1i!='0'i+) str2i=str1i; str2i='0'功能:从键盘为一维整型数组输入10个整数,调用fun函数 找出其中最小的数,并在main函数中输出。答案: int min,i;min=x0;for(i=1;i<n;i+)if(xi<min) min=xi;return min;功能:从键盘输入一个大于3的整数,调用函数fun判断 其是否素数,然后在main函数中输出相应的结论 信息。例如:7是素数,8不是素数。请编写fun函数。素数是 仅能被1和自身整除的数int i;int j;j= 1;for(i=2;i<n;i
21、+)if(n%i=0) j= 0;return j;功能:求一个n位自然数的各位数字的积。(n 是小于10的 自然数)long d,s=1; while (n>0) d=n%10; s*=d; n/=10; return s;功能:从键盘为一维整型数组输入10个整数,调用fun 函数找出其中最小的数,并在main函数中输出。 请编写fun函数。int min,i;min=x0;for(i=1;i<n;i+)if(xi<min) min=xi;return min;功能:编写函数用选择排序法对数组中的数据进行从小到 大的排序。答案: for(i=0;i<n-1;i+) k=i; for(j=i+1;j<n;j+) if(ak>aj) k=j; if(k!=i) t=ai; ai=ak; ak=t; 功能:编写函数fun其功能是:根据整型形参m,计算如下 公式的值:y=1/2!+1/4!+1/m!(m是偶数)答案:double y=0.0;int i,j;double s=1;for (i=2;i<=m;i+=2)for(j=i-1;j<=i;j+)s=s*j;y=y+1.0/s;return y;功能:求k!(k13),所求阶乘的值作为函数值返回。 (要求使用递归)if (k>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出庭代理授权协议书3篇
- 建筑装饰行业设计师劳动合同3篇
- 培训班合作培训协议3篇
- 廉洁自律自律承诺3篇
- 建筑电梯订购合同2篇
- 年艺人演出协议书3篇
- 信息安全优化提案3篇
- 公交运营驾驶员承诺书3篇
- 会议委托代表参加3篇
- 建筑项目分包合同3篇
- YY/T 0655-2024干式化学分析仪
- 中华民族共同体概论课件专家版2第二讲 树立正确的中华民族历史观
- 四年级四年级下册阅读理解100篇及答案经典
- 中职对口升学复习资料:《汽车机械基础》试题库+答案
- 部编版语文五年级下册第六单元整体教学设计教案
- 平面变压器设计与仿真
- 合作取得更大的成功辩论稿范文六篇
- 相关方需求和期望识别评价表
- 西南科技大学井巷工程课程设计样本
- 某化妆品牌案例分析
- 循环水管道施工组织设计
评论
0/150
提交评论