ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:43.36KB ,
资源ID:11569567      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11569567.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言周六一.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言周六一.docx

1、C语言周六一/*编写函数fun(n),n为三位自然数,判断n是否为水仙花数*/#include #include int fun(int n)int a,b,c; a=n%10; b=n/10%10; c=n/100; if(a*a*a+b*b*b+c*c*c=n) return 1; else return 0; void main() int num; clrscr(); scanf(%d,&num); while(num=1000) printf(please enter the num again! (num=100&num1000) n); scanf(%d,&num); if(fu

2、n(num)=1) printf( %d is a sxhs.n,num); else printf( %d is not a sxhs.n,num); getch(); /* 输出杨辉三角形#include stdio.h#include conio.h#define N 10main() int i,j; int aNN; for(i=0;iN;i+) for(j=0;j=i;j+) if (j=i|j=0) aij=1; else aij=ai-1j-1+ai-1j; for(i=0;iN;i+) for(j=0;j=i;j+) printf(%6d,aij); printf(n); g

3、etch();*/* 输入一个年份和月份并输出年和这个月份的天数#include stdio.h#include conio.hint iMaxDay(int iYear,int iMonth);int iMaxDay(int iYear,int iMonth) int a12=31,0,31,30,31,30,31,31,30,31,30,31; a1=28+(iYear%4&iYear%100!=0|iYear%400=0); return aiMonth-1; main() int iYear,iMonth; scanf(%d,%d,&iYear,&iMonth); printf(%dt

4、%d,iYear,iMaxDay(iYear,iMonth); getch();*/* 在一个一维数组中求众数 */#include #include #include main() int a100,i,j,t,cnt,t1,cnt1; randomize(); for(i=0;i100;i+) ai=rand(); for(i=0;i100;i+) printf(%8d,ai); printf(*); printf(*); /* 选择法排序*/ for(i=0;i=98;i+) for(j=i+1;jaj) t=ai;ai=aj;aj=t; /* 冒泡法排序 for(i=1;i=i;j-)

5、 if(ajaj-1) t=aj,aj=aj-1,aj-1=t;*/for(i=0;i100;i+) printf(%8d,ai); printf(*); printf(*); t=a0;cnt=1; for(i=0;i100;i+) t1=ai;cnt1=1; for(j=i+1;jcnt) t=t1,cnt=cnt1; if(cnt=1) printf(not); else printf(%dt%d,cnt,t); getch(); /*编写一个函数fun(n),计算n!*/#include #include long fun(int n) long s=1; int i; for(i=1

6、;i0) printf(%d!=%ld n,num,fun(num); else printf(input data error! n); getch(); /*使用递归函数实现计算n!*/#include #include long fun(int n) long f; if(n=1|n=0) f=1; else f=n*fun(n-1); return f; void main() int num; clrscr(); scanf(%d,&num); if(num0) printf(%d!=%ld n,num,/*/ fun(num) /*/); else printf(input dat

7、a error! n); getch();某数列为K(n)的定义为: 1 n=1 k(n)= k(n-1)2 n为偶数 k(n-1)3 n为奇数用递归的方法求该数列的第6项k(6)。#include #include int k(int n)int c; if(n=1) c=1; else if(n%2=0) c=k(n-1)*2; else c=k(n-1)*3; return c;void main()int m; clrscr(); scanf(%d,&m); if(m=1) printf(k(%d)=%dn,m,/*/ k(m) /*/); else printf(input data

8、 error!n);计算s=(1!)+(1!+2!)+(1!+n!)。 n由用户输入,小于10。(设计:函数h1(n)计算n的阶乘;函数h2(m)计算1!+2!+m!的累加运算。在主函数中调用h2()函数,h2()函数中调用h1()函数来实现累加。)#include #include long h1(int n)long t=1;int i; for(i=1;i=n;i+) t=t*i; return t;long h2(int m)long s=0;int i; for(i=1;i=m;i+) s=s+h1(i); return s;void main()int k,num;long sum

9、=0; scanf(%d,&num); for(k=1;k=num;k+) /*/ sum=sum+h2(k) /*/; printf(1!)+(1!+2!)+.+(1!+2!+.+%d!)=%ldn,num,/*/ sum /*/);设计一个函数fc,其功能为统计数组中偶数的个数。编写main函数,用数组名num做为函数传递的参数调用fc函数,实现对数组num的统计,并输出统计结果。#include stdio.hint fc(int a,int n)int i,c=0; for(i=0;in;i+) if(ai%2=0) c=c+1; return(c);main()int i,num10

10、; for(i=0;i10;i+) scanf(%d,&numi); printf(oushu: %d n,fc(num,10); printf(jishu: %d n,10-fc(num,10);在一个一维数组a中存放10个正整数, 求其中所有的素数。(用数组元素作为函数的实际参数)质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数。比1大但不是素数的数称为合数。1和0既非素数也非合数。素数在数论中有着很重要的地位。int sushu(int x) int i,k=1; if(x=1) k=0; for

11、(i=2;i=x/2;i+) if(x%i=0) k=0; return(k); main( ) int a10,i; for(i=0;i10;i+) scanf(%d,&ai); printf(sushu of array a are:n); for(i=0;i10;i+) if(sushu(ai) printf(%5d,ai);printf(n); 设计一个函数,计算两个自然数的最大公约数#include “stdio.h”int gcd(int m,int n)int r ; r=m%n; while(r!=0) m=n ; n=r ; r=m%n; return n;main()int

12、 m,n; scanf(%d,%d,&m,&n); printf(%dn,gcd(m,n);设计一个函数float ave(int a10),计算数组a所有元素的平均值。(用数组名作为函数的实际参数)float ave(int a10)int i,sum=a0 ; float aver; for(i=1;i10;i+) sum=sum+ai ; aver=1.0*sum/10 ; return(aver); void main() int i,score10; float aver; for(i=0;i10;i+) scanf(%d,&scorei); printf(n); aver=ave(

13、score); printf(average score is %5.2fn,aver); 用选择法对数组中10个整数按升序排序 。(要求将排序功能设计成函数,数组名作为参数)。void sort(int array,int n) int i,j,k,t; for(i=0;in-1;i+) k=i; for(j=i+1;jn;j+) if(arrayjarrayk) k=j; t=arrayk;arrayk=arrayi;arrayi=t;void main() int a10,i; printf(input the array:n); for(i=0;i10;i+) scanf(%d,&ai

14、); sort(a,10);printf(output the array after ordered:n); for(i=0;i10;i+) printf(%5d,ai);printf(n);设有一个34的矩阵,求出其中的最大元素。(要求:将计算最大值的功能设计成函数,数组名作为参数)max_value(int array12)int i,max; max=array0; for(i=0;imax) max=arrayi; return(max);main()int a34=1,3,5,7,2,4,6,8,15,17,34,12; printf(max=%dn,max_value(a);设计

15、一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。#include main() int inverse (char str); /*函数原型声明*/char str100;printf(Input string:n);gets(str);inverse(str);printf(Output string after inverse:n);puts(str);int inverse(char st) /* 函数定义*/char t; int i,j;for(i=0,j=strlen(st);istrlen(st)/2;i+,j-) t=sti; sti=stj-1; stj-

16、1=t; 设计一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格。如输入1990,应输出“1 9 9 0”。#include main()char str80;void insert(char str );printf(nInput four digits:n);gets(str);insert(str);printf(nOutput digits after insert space:n);puts(str);void insert(char str)int i; for (i=strlen(str);i0;i-) str2*i=stri; str2*i-1= ;使

17、用局部静态变量,求1到5的阶乘int fac(int n)static int f=1; f=f*n; return f;main()int i; for(i=1;i=5;i+) printf(%d!=%dn,i,fac(i);编写一个程序,在主函数中输入10个等长的字符串。用另一个函数sort()对它们排序,函数sort()原型为:void sort(char (*s)6);,要求形参是指向由6个元素组成的一维数组的行指针,然后在主函数输出这10个已排好的字符串。#include #include main()void sort(char (*s)6); int i; char str106

18、;char (*p)6; printf(Input 10 strings:n); for(i=0;i10;i+) scanf(%s,stri); p=str; sort(p); printf(Now, the sequence is:n); for(i=0;i10;i+) printf(%sn,stri);void sort(char (*s)6) /*冒泡法对10个字符串排序的函数*/ int i,j; char *t,temp6; t=temp; for(i=0;i9;i+) for(j=0;j0 ) strcpy(t,sj); strcpy(sj,sj+1); strcpy(sj+1,t

19、);运行结果:Input 10 strings: ChinaJapanKoreaEgyptNepalBurmaGhanaSudanItalyLibyaNow, the sequence is:BurmaChinaEgyptGhanaItalyJapanKoreaLibyaNepalSudan编写一个程序,在主函数中输入10个不等长的字符串。用另一个函数sort()对它们排序,函数sort()原型为:void sort(char *p6);,要求用指针数组处理,然后在主函数输出这10个已排好的字符串#include #include main()void sort(char *p); int i

20、; char *s10,str1020; for(i=0;i10;i+) si=stri; /*将第i个字符串的首地址赋予指针数组p的第i个元素*/ printf(Input 10 strings:n); for(i=0;i10;i+) scanf(%s,si); sort(s); printf(Now, the sequence is:n); for(i=0;i10;i+) printf(%sn,si);void sort(char *p) /*冒泡法对10个字符串排序的函数*/int i,j; char *temp; for(i=0;i9;i+) for(j=0;j0) temp=*(p+

21、j); *(p+j)=*(p+j+1); *(p+j+1)=temp;运行情况如下:Input 10 strings:ChinaJapanYemenPakistanMexicoKoreaBrazilIcelandCanadaMongoliaNow, the sequence is:BrazilCanadaChinaIcelandJapanKoreaMexicoMongoliaPakistanYemen编写一个程序,用指向指针的指针的方法对5个字符串排序并输出。自定义函数sort()的原型为:void sort(char *p);。#include #define LINEMAX 20 /*定义

22、字符串的最大长度*/main()void sort(char *p); int i; char *p,*pstr5,str5LINEMAX; for(i=0;i5;i+) pstri=stri; /*将第i个字符串首地址赋予指针数组pstr的第i个元素*/ printf(Input 5 strings:n); for(i=0;i5;i+) scanf(%s,pstri); p=pstr; sort(p); printf(strings sorted:n); for(i=0;i5;i+) printf(%sn,pstri);void sort(char *p) /*选择法对5个字符串排序的函数*

23、/int i,j; char *temp; for(i=0;i4;i+) for(j=i+1;j0) /*比较后交换字符串地址*/ temp=*(p+i); *(p+i)=*(p+j); *(p+j)=temp;运行情况如下:Input 5 strings:ChinaAmericaIndiaPhilippinesCanadastrings sorted:AmericaCanadaChinaIndiaPhilippines编写一个程序,用指向指针的指针的方法对n个整数排序并输出。要求写一个自定义函数sort(),其原型为:void sort(int *p,int n);n和整数在主函数中输入。排

24、序后结果最后在主函数中输出。#include main()void sort(int *p,int n); int i,n,data10,*p,*pstr10; printf(Input n: ); scanf(%d,&n); for(i=0;in;i+) pstri=&datai; /*将第i个整数的地址赋予指针数组pstr的第i个元素*/ printf(Input %d integer numbers:n,n); for(i=0;in;i+) scanf(%d,pstri); p=pstr; sort(p,n); printf(Now, the sequence is:n); for(i=0;in;i+) printf(%d ,*pstri); printf(n);void sort(int *p,int n) /*选择法对n个整数排序的函数*/int i,j,*temp; for(i=0;in-1;i+) for(j=i+1;j*(p+j) /*比较后交换整数的地址*/ temp=*(p+i); *(p+i)=*(p+j); *(p+j)=temp;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1