77范文网 - 专业文章范例文档资料分享平台

海大c程上机题附答案及附加题(3)

来源:网络收集 时间:2019-06-05 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

12. 编写函数int fun(int k),功能:从5个红球, 6个白球,7个黑球中任意取出k(2≤k≤18)个球作为一组进行组合。在每组中,可以没有红球和白球,但必须要有黑球。不同组合的数目作为函数值返回。例如,若k为8时,正确的组合数是31;若k为2时,正确的组合数是3;或k为3时,正确的组合数是6 。 #include int fun(int k) { int red,white,black; int sum=0,temp; for(black=1;black<=7;black++) for(white=0;white<=6;white++) for(red=0;red<=5;red++) { temp=black+white+red; if(temp==k)sum++; }

return sum; }

void main() { int x,n;

scanf(\ n=fun(x);

printf(\}

13. 编写函数void fun(char *str),功能:对形参str所指字符串中的字符按ASCII码升序排序。例如,下面程序运行时输入:The C Programming Language<回车> 输出: CLPTaaaeegggghimmnnorru #include void fun(char *str) { int i,j,k=0; char c; for(i=0;str[i]!='\\0';i++) { k=i; for(j=i+1;str[j]!='\\0';j++) if(str[j]

void main() { char s[100]; gets(s); fun(s); puts(s); }

也可以采用冒泡法进行排序。 这里用的是换位法排序。

14. 请编写函数void fun(int *a, int n, int y),它的功能是:把y值插入到有n个数的a数组中,a数组中的数已按由大到小的次序排好,y的值从键盘读入。 插入后,数组中的数仍然有序。对照下面三种情况运行程序:

1) 插在最前 2) 插在最后 3) 插在中间 若输入数11, 输出 20 18 16 14 12 11 10 8 6 4 2 输入数1, 输出 20 18 16 14 12 10 8 6 4 2 1 输入数33, 输出 33 20 18 16 14 12 10 8 6 4 2 #include

void fun(int *a,int n,int y) { int i,j,t; a[n]=y; 将要插入的数放到最后,然后整体用冒泡法排序。 for(i=0;ivoid main() { int i,a[11]={20,18,16,14,12,10,8,6,4,2},x; void fun(int *,int n,int y); scanf(\ fun(a,10,x); for(i=0;i<11;i++) printf(\}

15. 编写函数int fun(char *s1,char *s2),在字符串s1中统计字符串s2出现的次数并返回。若s2在s1中未出现,则返回0。例如:

若输入的字符串s1为:abaaAabcaabbabca,字符串s2为:ab ,则程序输出:n=4 若输入的字符串s1为:abaaAabcaabbabca,字符串s2为:abd,则程序输出:No find #include #include

int fun(char *s1,char *s2) {

int i,j,m=0,n=0;

for(i=0;i

if(m==0) n++;

m=0; }

return n; }

void main()

{ char a[80],b[40]; int n;

printf(\ gets(a);

printf(\ gets(b); n=fun(a,b); if(n==0) printf(\ else printf(\}

i+j是为了再返回原来的起点。。。 每使用完一次m要将其归0.

16. 编写函数int fun(char *str),功能是:统计字符串str中不同字符的个数并做为函数值返回。例如,下面程序运行时若输入:One world,One dream! 输出:n=13 #include int fun(char *str) { int i,j,k=0; for(i=0;str[i];i++) { for(j=0;j=i)k++; } return k; }

void main() { char s[80]; int n; gets(s); n=fun(s); printf(\}

采用嵌套循环,将每一个数和它前面的进行比较,如果没有重复则加一。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库海大c程上机题附答案及附加题(3)在线全文阅读。

海大c程上机题附答案及附加题(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/651037.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: