- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C中级实战题目解答
C语言程序设计中级实战题目解答
马俊编写和整理
计算太阳和地球之间的万有引力。
解答: F=G(m1*m2)/R2 G=6.67259*10-11m3s-2kg-1 m1=1.987E30(kg) m2=5.975E24 (kg)
R=1.495E11 (m)
/*-----------------------------------------------
程序grav.c计算太阳和地球之间的万有引力
-----------------------------------------------*/
float grav(float ml,float m2,float distance)
{
float g, G=6.67259E-11;
g=G*m1*m2/(distance*distance);
return g;
}
main()
{
float g,Msun=1.987E30,Mearth=5.975E24;
g=grav(Msun,Mearth,1.495E11);
printf(The gravitation between sun and earth is %g Newton. \n,g);
}
2、试用计算机验证歌德巴赫猜想,即任何一个偶数可分解为两个素数之和 1+1=2
分析:假设我们要验证10000以内的偶数,首先将10000个数放在一个数组中,然后将所有的合数去除掉(用零代替),循环从4到10000开始遍历所有的偶数,测试每一个偶数是否可以分解为这个数组中两个非零数相加。
/*************************************
File: goldbuch.c
Author: 马俊
Time: 2006-10-19
function: To test the suppose of GOLDBUCH
**************************************/
#include stdio.h
#define M 10001
void CreatePrimeList(int PrimeList[])
{
int i,j;
for(i=0;iM;i++)PrimeList[i]=i;
i=2;
while(iM/2)
{
for(j=i+1;jM;j++)
if(PrimeList[j]!=0PrimeList[j]%PrimeList[i]==0)
PrimeList[j]=0;
i=NextPrimeNumber(i,PrimeList);
}
}
int NextPrimeNumber(int p,int PrimeList[])
{
p++;
while(PrimeList[p]==0)p++;
return PrimeList[p];
}
void test(int PrimeList[])
{
int x,p;
x=4;
while(xM)
{
p=PrimeList[2];
while(pM/2PrimeList[x-p]==0)
p=NextPrimeNumber(p,PrimeList);
if(pM/2)printf(Great discovery: Goldbach is wrong! \n);
else printf(The even number %d=%d+%d\n,x,p,x-p);
x=x+2;
}
}
void main()
{
int PrimeList[M];
CreatePrimeList(PrimeList);
test(PrimeList);
getch();
}
输入一个年份,打印年历
分析:1)我们如果知道某一年元旦是星期几,则这一年每一天是星期几就定下来了。
2)我们知道1900年的元旦是星期一。
3)每年是365天=52*7+1,闰年多一天
4)4年中会有一个闰年,闰年的判断条件是:year%4==0year%100!=0||year%400==0
5)4、6、9、11月30天,3、5、7、8、10、12月31天,2月来处理闰月
/****************************************
File: Calender.c
Author:马俊
Time:2006-10-19
Function: Print the Calender
***********
您可能关注的文档
最近下载
- 2024年秋新人教PEP版英语三年级上册全册教学课件(新版教材).pptx
- 围手术期肺功能的保护.ppt
- 智慧电厂数字化转型整体解决方案 [1460页Word].doc VIP
- 计算机维修工三级(高级)理论考试题库(单选题汇总).docx VIP
- 浙江省湖州市2023-2024学年八年级下学期期末考试英语试题(含答案及听力原文,无音频).pdf VIP
- 高血压患者服药依从性现状及护理干预.doc
- 中国各省市矢量地图素材课件课件.ppt
- 专业基础知识(给排水)考试试卷(共四套)含答案解析.pdf
- 2024年保健按摩师(高级)职业技能鉴定考试题库(含答案).docx
- 中国传统文化概论(第三版) 课件 第五章 中国传统陵寝.pptx
文档评论(0)