C语言编程训练九.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1、函数fun的功能是判断整数n是否是“完数”。当一个数的因子之和恰好等于这个数本身时,就称这个数为“完数”。例如:6的因子包括1、2、3,而6=1+2+3,所以6是完数。如果是完数,函数返回值为1,否则函数返回值为0。#include stdio.hint m;int fun(int n, int a[]){ int i, t; t = n; for(________; in; i++ )i=1 if(n%i==0) { a[m]=i; m++; t=t - i___________; } if ( t==0 ) return 1; else return 0; }main(){ int n , a[10], flag, i, k; printf(请输入一个整数:); scanf(%d,n); flag = fun( n, a); if(flag) { printf( %d 是完数,其因子是: , n); for(i=0;im;i++) printf( %d , a[i]); printf(\n); } else printf( %d 不是完数.\n , n );}2、 将英文文章存入到字符串数组xx中,请编制函数StrOL(),其函数的功能是:以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。最后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中例如:原文: You He Me I am a student. 结果:Me He You student a am I原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。#includestdio.h#includestring.h#includeconio.h#includectype.h char xx[50][80];int maxline=20;/*文章的总行数*/ void StrOL(void){int i,k;char *p1,*p2;char t[80],t1[80];for(i=0;imaxline;i++){p2=p1=strchr(xx[i],\0)-\0;t[0]=t1[0]=\0;k=1;while(k){while(isalpha(*p1)==0p1!=xx[i]) {p1--;p2=p1;}while(isalpha(*p1)p1=xx[i]) p1--;memcpy(t1,p1+1,p2-p1);t1[p2-p1]=0;strcat(t,t1);strcat(t, );if(p1xx[i]) k=0;}strcpy(xx[i],t);} } void main(){for(i=0;imaxline;i++)scanf( %s\n ,xx[i]);StrOL();for(i=0;imaxline;i++)printf( %s\n ,xx[i]);}3、下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。请编写函数num(int m,int k,int xx[])实现程序的要求。例如:若输入17,5,则应输出:19,23,29,31,37。#include conio.h#include stdio.hvoid readwriteDAT();int isP(int m){int i;for(i=2;im;i++)if(__________)_____________;return 0;return 1; }void num(int m,int k,int xx[]){ int i,j=0; i=m+1; while(jk) {if(isp(i)) xx[j++]=i; i++; }} main(){int m,n,xx[1000];printf(\nPlease enter two integers:);scanf( %d%d ,m,n);num(m,n,xx);for(m=n;mn;m++)printf( %d ,xx[m]);printf(\n );}注:太简单。void num(int m,int k,int xx[]){ int i,j=0; i=m+1; while(jk) {if(isp(i)) xx[j++]=i; i++; }}设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第个m人,此人出圈,再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每10人一组,给出这n个人的顺序表。请考生编制函数Josegh()实现此功能设n=100,c=1,m=10.#include stdio.h#define N 100#define S 1#define M 10in

文档评论(0)

moon8888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档