[C语言判断一个数是否为素数]原发布者:邂逅枫林 } if(i==val) printf("YES!\n"); else printf("No!\n");}注:for循环的功能:①若能整除,通过break跳出函数②若一直到val-1都不能整除,此时i再自增1到val,不满足i<val...+阅读
#include // 必须的时间函数头文件time_t // 时间类型(time.h 定义)struct tm { // 时间结构,time.h 定义如下:int tm_sec;int tm_min;int tm_hour;int tm_mday;int tm_mon;int tm_year;int tm_wday;int tm_yday;int tm_isdst;} time ( &rawtime ); // 获取时间,以秒计,从1970年1月一日起算,存于rawtimelocaltime ( &rawtime ); //转为当地时间,tm 时间结构asctime() // 转为标准ASCII时间格式://就是直接打印tm,tm_year 从1900年计算,所以要加1900,月tm_mon,从0计算,所以要加1这是获取系统时间,自己再加上一个判断吧。
古代人是怎么判断时间的
在历史进程中,我们的祖先在不同的时期发明和制造了各种适应当时社会经济发展和人们生活需求的计时器。其中主要有圭表、日晷、漏刻(见图)、机械计时器等。
圭表
圭表是我国最古老的一种计时器,古代典籍《周礼》中就有关于使用土圭的记载,可见圭表的历史相当久远。圭表是利用太阳射影的长短来判断时间的。它由两部分组成,一是直立于平地上的测日影的标杆或石柱,叫做表;一为正南正北方向平放的测定表影长度的刻板,叫做圭。既然日影可以用长度单位计量,那么光阴之“阴”,及时间的长短,,用“分”、“寸”表达就顺理成章了。
日晷
日晷也是通过观测日影计时的仪器,主要是根据日影的位置以确定当时的时辰或刻数。从出土文物来看,汉以前已使用日晷,在机械钟表传入中国之前,日晷一直是通常使用的计时器。日晷的主要部件是由一根晷针和刻有刻线的晷面组成,随着太阳在天空运行,晷针的投影像钟表的指针一样在晷面上移动,就可以指示时辰。
漏刻
圭表和漏刻都是用太阳的影子计算时间的,然而遇到了阴雨天或黑夜便失去作用了,于是一种白天黑夜都能计时的水钟便应运而生,这就是漏刻。漏,是指漏壶;刻,是指刻箭。箭,则是标有时间刻度的标尺。漏刻是以壶盛水,利用水均衡滴漏原理,观测壶中刻箭上显示的数据来计算时间。作为计时器,漏刻的使用比日晷更为普遍。我国古代诸多文人骚客留下了许多有关漏刻的富有诗情画意的章句。如唐代诗人李贺:“似将海水添宫漏,共滴长门一夜长。”宋代苏轼:“缺月挂疏桐,漏断人初静。”在机械钟表传入中国之前,漏刻是我国使用最普遍的一种计时器。
机械计时器
单纯利用水的流动来计时有许多不便,人们逐渐发明了利用水做动力,以驱动机械结构来计时。公元前117年,东汉的张衡制造了大型天文计时仪器——水运浑天仪,初步具备了机械性计时器的作用。随后历代都相继制作了附设有计时装置的仪器,其中宋代苏颂制造的水运仪象台,把机械计时装置的发展推倒了一个新的高峰,水运仪象台的计时机械部分可以按时刻使木偶出来击鼓报刻,摇铃报时,示牌报告子、丑、寅、卯十二个时辰等。
这类计时器尚不能算是独立的计时器,还是天文仪器与计时仪器的混合体,至十四世纪六十年代,我国的机械计时器已脱离了天文仪器而独立,不但具有传动系统-齿轮系,而且还有擒纵器,如果再进一步,就可能出现完全现代意义上的钟表。但遗憾的是,功亏一篑,中国没能做到这一点,最终机械钟表还是从西方引进。
除上述几种主要的计时器外,还有其他一些计时方法。如,香篆、沙钟、油灯钟、蜡烛钟等。
考察古人的时间观念,可以从两个方面加以观查:一是古人对时间科学划分后制定的计时制;二是古人把时间、计时仪器和国家法制、政权兴衰相联系。
我国古代制定、沿用自成体系的计时法。百刻计时法最古老,使用的时间也最长。大约西周之前(公元前十一世纪),古人就把一昼夜均分为一百刻(一刻等于14.4分)。汉代(前206-公元220)除使用百克制外,还应用以太阳方位计时的方法,到隋唐(公元581-907)时,太阳方位计时衍生为十二时辰计时,百克制与十二时辰计时法并用。直到明末清初(十七世纪),西方机械钟表传入后,我国才改用一天二十四小时的计时法,但十二时辰仍沿用,每个时辰两小时。为和二十四小时计时法相一致,我国古老的百克制演变为九十六克制,一个时辰内分为八刻、一小时内分为四刻,这样一昼夜就为九十六刻,与世界通用的计时法相一致。
此外,我国古代还使用独特的夜间计时方法,这就是“更”。“更”是计时单位,一夜分五更,每更时间长短依夜的长短而定。
在野外若没有钟表如何判断时间
在野外若没有钟表而想知道时间时,你该怎么办?按地球自转及月球公转的基本常识,白天时可由太阳的移动,晚间可由月亮的移动来判断正确的时间,但这与季节、经纬度等有关,所以也不是非常准确。 如果你携带有指北针或罗盘,可在指北针或罗盘中心立一根火柴,指北针或罗盘指针转至正北正南方向,观察火柴杆影指的方向,杆影指向西(W)则是上午,杆影指向东(E)则是下午,杆影指向正北(N)则是正午,按杆影的移动轨迹可判明早六时至下午六时的时间。 也可以自己制造简便的日晷:用厚纸板两块,按照当地纬度的余角安置,在上面一块厚纸板口按顺时针方向从1至24画好字盘,将针插在字盘中央。安置日晷时字盘应向北。在3月-9月可按上法安置字盘,10-2月,应自下而上将针反插在上面纸板上并在其背面按照反时针方向画出字盘。
夜间可以用月亮判明时间,月亮从东转到西约需12小时,平均每小时约转15度,可结合当时的月相和月亮的位置观测时间。 根据星辰的运动测量时间,最简单的一种是自北极星至小熊量座戽斗凹边底端β的星引一条想象中的直线,设想此线代表钟表的指针,北极星所在位置为字盘的中心,可以像读12数字的钟表那样测定时间,这需要你在平时清朗夜空时结合钟表时间经常观察星空,记住位置,在使用时就轻车熟路了。 该答案来自极限户外网官方网站
时间问题的推理判断如何答
和时间有关的问题我们统称为时间问题,常见的时间问题有星期日期类问题、年龄问题、钟表问题等,这类问题上手简单得分容易,是大家必须掌握的题型。上文咱们探讨了年龄问题,本文咱们来了解下星期日期推断问题的相关内容。
l 星期日期问题主要包括如下知识点:
①平年闰年的判定:4年一闰,100年不闰,400年再闰
4年一闰,100年不闰,是指这个年份如果是4的倍数的同时又是100的倍数,那这个年份就不是闰年。比如1900年是4的倍数,但同时又是100的倍数就不是闰年;
400年再闰的是指该年份如果是100的倍数的同时又是400的倍数,那这个年份就是闰年。如2000年是100的倍数的同时又是400的倍数,2000年就是闰年。
②大月小月:大月31天→1月、3月、5月、7月、8月、10月、12月;
小月30天→4月、6月、9月、11月;
2月→平年28天,闰年29天。
l 星期推断问题的本质有如下两点:
①非整年推算:以7为周期的推算问题,天数除以7,余几就加几;
②整年推算:过一年就加一,有闰日再加一(本质也是以7天为周期的推算问题)。
而日期推断问题的本质主要考察的就是大小月份天数的变化。
l 星期日期推断问题的解题方法主要有两种:
1.直接推断法(根据7的周期或大小月份的天数变化来推断);
2.代入排除法。
我们结合以下的例题来看一下星期日期推断问题知识点和方法的应用。
【例1】老张准备完成一项任务需耗时100个工作日,他周一至周五每天坚持工作,周六和周日休息,他从周四开始工作,则他完成任务的那天是( )。
A. 周一 B. 周二
C. 周三 D. 周五
【解析】考查星期日期问题。100个工作日里先去掉周四、周五2天,这样剩下98天从周一开始计算。工作日的周期为5, 98÷5=19……3,因此,完成任务那天是周三,选择C选项。
【例2】(上海2016)2010年元旦是星期五,那么2010年5月1日是星期几?( )
A.四 B.六
C.日 D.一
【解析】本题考察日期问题。2010年1、2、3、4月分别为31、28、31、30天,合计120天,120÷7=17……1,所以5月1日为周五加一天即周六,因此答案选择B选项。
【例3】已知2011年的11月25日是星期五,问2012年的11月25日是星期几?( )
A.星期二 B.星期三
C.星期日 D.星期六
【解析】星期日期推算。2011年的11月25日到2012年的11月25日刚好一整年,过一年就加一,2012年是闰年,又过了闰日,再加一,所以2012年11月25日为周日。选择C选项。
【例4】(上海2014)甲每工作5天休息周六周日2天,法定节假日如非周六周日也要加班。已知甲某年休息了106天,那么他下一年12月的第一个休息日是( )。
A. 12月1日 B. 12月2日
C. 12月3日 D. 12月4日
【解析】星期日期推算。365÷7=52……1,366÷7=52……2,也就是一年有52个整星期,52个星期的周六周日共104天,根据题目,甲只在周末休息,休息了106天,因此可判断当年为闰年,且多出的2天为周六周日。因此,当年的12月31日为周日,到下一年的11月30日共有365-31=334天,334÷7=47……5,因此下一年的11月30号为周五,那么下一年的12月1日为星期六,选择A选项。
以下为关联文档:
易语言无限判断时间段判断循环首(真) 如果真(列表框1.取项目数()>=1 且 列表框2.取项目数()>=1 且 列表框3.取项目数()>=1 且 列表框4.取项目数()>=1) // 判断后做的事情 //程序_延时(1,1) 是否需要间隔在进行...
在c语言中要怎么来判断整数和小数啊你看一下这个方法符不符合你的要求 12.000算整数吧,只是后面多几个零 #include<stdio.h> void main() { float num; int NB; printf("输入一个数"); scanf("%f",&num); NB=(int)num;...
c语言中的时间函数中怎么打印当前的时间还有怎么显示现在的时间#include <stdio.h> #include <time.h> int main() { time_t cur = time(NULL); time(&cur); printf("%d\n", cur); char *curstr = ctime(&cur); printf("%s\n", curstr); stru...
问在C语言里怎么获取当前时间和日期#include <time.h>; 要添加这个头文件。 time_t rawtime; struct tm * target_time; time ( &rawtime ); //获取当前时间,存rawtime里 target_time = localtime ( &rawtime )...
利用栈判断回文:C语言判断是不是回文数你写的太复杂了,很容易错#include <stdio.h> void main() { int t,s=0,n; printf("输入数字:"); scanf("%d",&n); t=n; while(t) s=s*10+t%10,t/=10; if(s==n)printf("是\n"); else print...
C语言链栈判断回文#include #include int IsPalindrome(const char *cScr); void main(void) { char cStr[21]; while (1) { gets(cStr); printf("%d\n",IsPalindrome(cStr)); } } int IsPalind...
C语言条件判断和m的问题首先你要理解前自减和后自减的区别,单看m-- 和--m ,最后得到的结果都是一样的,都是比m小1的值,但是m--的效果是先使用m的值,然后再把m-1,--m的效果是先把m-1,在使用m的值。 现在来...
c语言怎么动态调用系统时间用以个函数做#include#includevoid main () { time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime ); printf ( "\007The current date/time is...
C语言判断素数C语言判断素数,如何编写一个C语言程序判断一个数是否是素数:按照你的程序凡是是奇数的都被判定为素数 for(i=2;i<n;i++) { a=n%i; //只要n是奇数,到最后必然a=1 } 有问题 按源程...