欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    c语言程序详解110.doc

    • 资源ID:4718101       资源大小:172.50KB        全文页数:26页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    c语言程序详解110.doc

    1、/对data.txt文件写入10条记录#include main()FILE *fp;int i;float x;fp=fopen(d:date.txt,w);for(i=1;i=5;i+)scanf(%f,&x);fprintf(fp,%fn,x);fclose(fp);有一个34的矩阵,要求输出其中值最大的元素的值,以及它的行号和列号。#include#define M 3#define N 4main( )int max,i,j,r,c;int aMN=123,94,-10,218,3,9,10,-83,45,16,44,-99;max=a00;for(i=0;iM;i+)for(j=0

    2、;jmax)max= aij;r=i;c=j;printf(max=%d , row =%d , colum=%d n,max,r,c);求一个33矩阵主对角线元素之和。#includevoid main( )int a33=1,2,3,4,5,6,7,8,9,sum=0,i,j; for (i=0;i3;i+) for (j=0;j3;j+) if (i=j) sum+=aij; printf(%d,sum); /*建立一个通讯录结构体,其成员变量主要有:序号,姓名,电话。根据建好的结构体设计有3个人员的通讯录,对其赋值,并将3人的通讯录按行输出。*/#include stdio.hstru

    3、ct memberchar num5;char name10;int tel;void main()int i;struct member mem3=001,zhangsan,139,002,lisi,139,003,wangwu,139;printf(NumberName teln);for(i=0;i3;i+)printf(%5s%10s%5dn,memi.num,memi.name,memi.tel);/*2、编写程序,从键盘读入一个字符串,用字符数组保存,然后分别用strlen()、sizeof()计算其长度,输出结果并分析。*/#include #include void main(

    4、) char s20;gets(s);puts(s);printf(%d,%dn ,sizeof(s),strlen(s); 程序中头文件type1.h的内容是:#define N 5#define M1 N*3程序如下:#includetype1.h#define M2 N*2main()int i; i=M1+M2;printf(%dn,i);程序编译运行后的输出结果是(c)A)10 B)20 C)25 D)301、所谓“同构数”是指这样一个数,它出现在它的平方数的右侧,例如5的平方是25,25的平方是625,故5和25都是同构数,求1,1000之间所有同构数的个数和总和。7,1114#i

    5、ncludevoid main()int i,a,n=0,sum=0;for(i=1;i1000;i+)a=i*i;if(i10&a%10=i)n+;sum=sum+i;else if(i100&a%100=i)n+;sum=sum+i;else if(a%1000=i)n+;sum=sum+i;printf(%d,%d,n,sum);方法二:#includevoid main()int i,a,sum=0,n=0;for(i=1;i1000;i+)a=i*i;if(a%10=i|a%100=i|a%1000=i)n+;sum=sum+i; printf(%d %d,sum,n);猴子第一天摘

    6、下若干桃子,当即吃了一半,还不过瘾又多吃了一个。第二天早上又将剩下的桃子吃了一半,还是不过瘾,有多吃一个。以后每天都吃前一天剩下的一半再加一个。到第10天再吃剩下一个了。求猴子第一天摘了多少桃子?1534#includevoid main() int i,x=1; for(i=9;i0;i-) x=(x+1)*2; printf(第一天共摘了%d只桃子n,x); 方法二:#include int peach(int n) int c; if(n=10) c=1; else c=2*(peach(n+1)+1); return c;void main() int sum=0;sum=peach(

    7、1);printf(%d,sum);2、一个素数(设为p)依次从最高位去掉一位,二位,三位,若得到的各数仍都是素数(注:1不是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求100,999之内的所有逆向超级素数的个数。39#include#includeint prime(int m) int i,k,f=1 ; if (m=1) f=0 ; k=(int)sqrt(m); for (i=2; i=k;i+) if (m%i=0) f=0 ; retur

    8、n f ; void main()int p,i,j,k,sum=0;for(p=100;p=999;p+)i=p/100;j=(p/10)%10;k=p%10;if(prime(p)&prime(j*10+k)&prime(k)&k!=0&j!=0)printf(%d ,p);sum+;printf(%d,sum); /*程序:冒泡法排序函数的定义。*/#include void Bubble (int *pa,int n);/冒泡法排序函数声明int main() int a10,n,i; do printf(Input n(1=n=10):n);scanf(%d,&n);while (n

    9、10); printf(Input %d elements:n,n);for (i=0;in;i+) scanf(%d,&ai); printf(The original array is:n);for (i=0;in;i+) printf(%5d,ai);printf(n);Bubble (a,n); /冒泡排序函数调用 printf(The sorted array is:n);for (i=0;in;i+) printf(%5d,ai);printf(n);return 0;void Bubble (int *pa,int n) int i, j ,t;for (i=0; ii;j-)i

    10、f (pajpaj-1)t=paj-1;paj-1=paj;paj=t;德国数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个素数的和。但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对。试求6744可以分解成多少种不同的素数对(注: A+B与B+A认为是相同素数对)144#include#includeint prime(int m) int i,k,f=1 ; if (m=1) f=0 ; k=(int)sqrt(m); for (i=2; i=k;i+) if (m%i=0) f=0 ; return f ; void main()

    11、int a,b,n=0;for(a=1;a6744/2;a=a+2)if(prime(a)b=6744-a;if(prime(b)n+; printf(%dn,n);/*程序6.6 求最大公约数函数的定义与调用。第4章的程序4.9是求最大公约数程序的主函数形式,现在将其求最大公约数部分独立定义为函数gcd,并在主函数中调用*/#includeint gcd(int dividend,int divider);/求最大公约数函数声明int main( )int m,n; do printf(Input m,n:n);scanf(%d%d,&m,&n); while (m=0|n=0); prin

    12、tf(hcd: %dn,gcd(m,n);/求最大公约数函数调用return 0; int gcd(int dividend,int divider) /求最大公约数函数定义int remainder; remainder=dividend%divider; while (remainder) dividend=divider; divider=remainder; remainder=dividend%divider ; return divider; /循环终止时的除数 1、在100,999范围内同时满足以下两个条件的十进制数. 其个位数字与十位数字之和除以10所得的余数是百位数字;该数是

    13、素数; 求有多少个这样的数?15方法一:main()int a,i,j,k,m,sum=0;for(a=100;a=999;a+)i=a%10;j=(a/10)%10;k=a/100;if(i+j)%10=k)for(m=2;m=a)sum+;printf(%d,sum);方法二:#includemath.hint prime(int i)int j;for(j=2;j=sqrt(i);j+)if(i%j=0)return 0;return 1;main()int a,i,j,k,m,sum=0;for(a=100;a=B,求所有小于或等于100(即:A=100,B=100)的自然数对中A之和

    14、。1669#includemath.hmain()int a,b,i,j,k,sum=0;for(a=1;a=100;a+)for(b=1;ba;b+)i=a+b;j=a-b;if(sqrt(i)-(int)sqrt(i)=0 & (sqrt(j)-(int)sqrt(j)=0)printf(%d,%d)n,a,b);sum=sum+j;printf(%d,sum);方法二#includestdio.h#includemath.hint f(int i)int flag;if(sqrt(i)-(int)sqrt(i)=0)flag=1;elseflag=0;return flag;main()

    15、int a,b,i,j,k,sum=0;for(a=1;a=100;a+)for(b=1;ba;b+)if(f(a+b)&f(a-b)printf(%d,%d)n,a,b);sum=sum+(a-b);printf(%d,sum);梅森尼数是指能使2n-1为素数的数n,求1,21范围内最大的梅素尼数?19梅森尼数是指能使2n-1为素数的数n,求1,21范围内有多少个梅森尼数?7#includemath.hint prime(int i)int j;for(j=2;j=sqrt(i);j+)if(i%j=0)return 0;return 1;main()int i,j,p,sum=0;for(

    16、i=2;i=21;i+)p=1;for(j=1;j=i;j+)p=p*2;if(prime(p-1)=1)printf(%d ,i);sum+;printf(%dn,sum);求100200间的全部素数方法一: #include # include void main() int m,k,i,n=0; for(m=101;m=200;m=m+2) k=sqrt(m); for (i=2;i=k+1)printf(%d ,m);n=n+1;if(n%10=0) printf(n); printf (n);方法二:#includemain()int i,j,k,n=0;for(i=100;i=20

    17、0;i+)k=1;for(j=2;j=sqrt(i);j+)if(i%j=0)k=0;if(k)printf(%d ,i);n+;printf(n);printf(%dn,n);一个数如果刚好与它所有的因子之和相等,则称该数为一个“完数”,如:6=1+2+3,则6就是一个完数。求出200到500之间所有的完数之和。496main()int n,s,i,total=0;for(n=200;n=500;n+)s=0;for(i=1;in;i+)if(n%i=0)s=s+i;if(s=n)total=total+n;printf(%dn,total);求出1000以内所有的完数,并输出其因子main

    18、()int n,s,i;for(n=1;n=1000;n+)s=0;for(i=1;in;i+)if(n%i=0)s=s+i;if(s=n)printf(%d ,n);for(i=1;in;i+)if(n%i=0)printf(%d ,i);printf(n);编程序求出1到5000之间的能被5整除的前若干个偶数之和,当和大于500 时程序退出。550方法一Void main()int sum=0,i;for(i=2;i500)break;printf(%d,%dn,sum,i);方法二#include void main()int sum=0,i;i=2;while(sum=500)if(i

    19、%5=0)sum=sum+i;i=i+2;printf(%d,%dn,sum,i); getch(); 编程序求出 2+4+8+16+32+这样的数之和。如果累加数大于500时,则程序终止并输出结果。510方法一:main()int sum=0,i=2;while(sum=500)sum=sum+i;i=i*2;printf(%d,%dn,sum,i/2);方法二:main()int sum=0,i=2;for(i=2;i500)break;printf(%d,%dn,sum,i);“水仙花数”是指这样的数,其各位数字的立方和等于该数本身,如: 153=13+53+33。编写程序求100至99

    20、9的范围内有多少个水仙花数。4main()int i,j,k,n;for(n=100;n=999;n+)i=n/100;j=(n/10)%10;k=n%10;if(n=i*i*i+j*j*j+k*k*k)printf(%d ,n);一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如,6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求200到500之间的的所有完数之和。496main()int n,s,i,total=0;for(n=200;n=500;n+)s=0;for(i=1;in;i+)if(n%i=0)s=s+i;if(s=n)total=total+n;p

    21、rintf(%dn,total);求100,200范围内素数的个数。21#includemain()int i,j,k,n=0;for(i=100;i=200;i+)k=1;for(j=2;j=sqrt(i);j+)if(i%j=0)k=0;if(k)n+;printf(%d ,i);printf(n);printf(%dn,n);编写程序,求所有符合算式ij*ji=1300的最小数ij(即i*10+j)。其中i、j是19之间的一位整数。25void main() int i,j,n,t=0;for(n=11;n=99;n+)i=n/10;j=n%10;if(n*(j*10+i)=1300)b

    22、reak;printf(%dn,n);德国数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个素数的和。但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对。试求6744可以分解成多少种不同的素数对(注: A+B与B+A认为是相同素数对)144#include#includevoid main()int a,b,i,j,f1,f,n=0;for(a=3;a6744/2;a=a+2) f1=1;for(j=2;j=sqrt(a);j+)if(a%j=0)f1=0;if(f1) b=6744-a;f=1;for(i=2;i=sqrt(b);i+)if(b%i=0)f=0; if(f)printf(%d,%d n,a,b);n+; printf(%dn,n);方法二:#include#includevoid main()int f(int x);int a,b,n=0;for(a=3;a6744/2;a=a+2)if(f(a)b=6744-a;if(f(b)n+; printf(%dn,n);int f(int x)


    注意事项

    本文(c语言程序详解110.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开