下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
这些程序是我自己一个ー个写的,现拿出来让和我ー样的初学者分享一下,用的是devC++编译,里面包括详细的分析过程和代码注释,有两个文件,ー个是C++/C基础的,另ー个是基础提高篇,我相信对初学者是有很大的帮助的! 同时里面有运行的图片,下载的同学可以先看题目,然后在自己去做,在和我比较一下思路,我写的不是很好的地方还望赐教下载地址:/科技职院
唐湘衡基础提高篇51.求每隔1000素数的个数/♦07-06-1011:52题目:从〇开始,输出每隔1000个素数的个数如:0-1000素数个数为168,1000-2000为!352000-3000为!27素数:素数即只能被1和它自身整除的数,就不能在被其它数整除了其实素数和质数是同一个概念如:135711131719232931374143思路:任何数都能被1和自身整除,素数区别在于除此之外还不能被其它的整除,这一点是关键分两边:1.求素数2.求素数的个数*/#include<iostream>usingnamespacestd;intNcount(intnumc);〃求素数的个数intmain(){inti;intn=1;intsum=0;inttemp=0;intk=0;for(i=1000;i<=10000;i=n*1000)〃每隔1000,求一次素数个数{sum=Ncount(i)-temp;temp=temp+sum;cout<<k*1000<<“到"<<iv<',素数个数为:"«sum«endl;n++;k++;system("pause");return0;}intNcount(intnumc)〃求素数的个数(inti,j;intncount=0;intn=1;for(i=l;i<numc;i+=2)〃限定在偶数范围进行寻找(boolf=true;〃假设i是素数for(j=2;j<i;j++)〃被大于1和到自己范围的数进行整除(if(i%j==0) 〃如果此数i能被(2ー自身)的某ー个数整除,就跳出内循环,( 〃进入外循环(进行下ー个数的判断)f=false;break;}}if(!f)〃如果i在100之内,并且不能被大于1和到自己范围的数进行整除不是素数(continue;〃跳出打印进入下一次数的判断}ncount++;}returnncount;}b到1萌。素羲个数为,1682000素数个数为:135300嚏数个数为:1273。*4000素数个数为:1205000素数个数为:1195000き600嚏数个数为:1146000ア700噎数个数为:1178000素数个数为:1079000案数个数为11109000チ10000素数个数え112h青按任意键继续..--52/*08-06-1013:11**大端模式:高地址存放低字节,低地址存放高字节,小端模式相反记住小端模式就行了:低地址存放低字节,高地址存放高字节**字节模式成立的条件:字节数大于1个才能这样讲**大端小端检测方法:如何检査处理器是big-endian还是(ittle-endian?联合体union的存放顺序是所有成员都从低地址开始存放,利用该特性就可以轻松地获得了CPU对内存采用Little-endian还是Big-endian模式读写。*/#include<iostream>usingnamespacestd;/***声明联合体*/unionJudge{shorts;charch[sizeof(short)];};Judgeflag;/・联合体对象・/intmain(){flag.s=0x0102;/・放两个数12ツif(sizeof(short)1=2){cout«"测得short类型有"<<sizeof(short)<<"个字节"cvendl;)if(flag.ch[0]==2&&flag.ch[l]==1)/・低地址存低字节数据,高地址存高字节数据・/《coutvv"你用的电脑处理器是小端模式!"<<endl;}elseif(flag.ch[0]==1&&flag.ch[l]==2レ*低地址存高字节数据,高地址存低字节数据*/coutvv"你用的电脑处理器是大端模式!"vvendl;else(coutくぐ未知模式”<<endl;}system("pause");return0;尔用的电脑处理器是小端模两青接任意键继续...・/*10-06-1008:19*・题目:有n个人围成一圈,从第一个开始报数,报到3时的那个人就退出去,然后在往后面在从1开始数,数到3的人就退出,直到最后ー个,如果此时所剩人数大于1,又回到开始继续上诉操作,直到剩下最后ー个人,写程序算出最后一个人是谁**程序思路:先建立一个数组,将1-n保存数组,然后在对数组进行遍历,用ー个变量对其进行计算,如果数组的值不为〇,计算值加1,当为三时,则将数组值赋个〇,到达n后如果数组里的数不为〇的有多个,则返回数组开始处继续执行上诉操作,直到最后所有数组元素只有一个不为〇时,打印出这个值,他就是留下来的人*/#include<iostream>usingnamespacestd;intmain(){inta[1000];/*最多1000个人・/intn;inti,j;cout<ぐ请输入游戏人数:cin»n;//inta[n]; /・数组下标用ー个子变量初始化,在vc中报错,这种写法最好不用支持・/intsumnum=n; 〃用来判断扫描后还剩几个人intncount=0;〃计算!-3/**往数组中存数字1川/for(i=0;i<n;i++)(a[i]=i+1;*对数组元素进行遍历操作,求出最后剩下的那个人/for(j=l;j<n;j++)(for(intk=0;k<n;k++)if(a[k]==0) /*如果遇到为0,则证明它是被剔除出去的人不理睬进入对下个人的判断・/(continue;)else /*如果不为0证明此人还未退出・/(ncount++;if(ncount==3) /・如果ncount=3报数到3把此人剔除ncount置0总人数sumnum减1*/(a[k]=0;ncount=0;sumnum";))if((sumnum==1)&&a[k]!=0)/・当最后只剩ー•个人了,输出此人(数组中不为0的数字)*/coutvv"最后剩下的是第"《a[k]<<"个人["<vendl;system(pause);return0;)人人个ー54.最小拉丁方阵/*11-06-1022:33**输入n,求n阶最小的拉丁方阵(2<=n<=9),n阶拉丁方阵为每一行、每一列都是数字1到n»且每个数字只出现一次。最小拉丁方阵是将方阵的一行一行数连接在ー起,组成为ー个数,则这个数是最小的。1234234134124123思路:第一行为1234,第二行从2开始,第三行是3,第4行是4开头,后面在是连续的数,根据这个特点进行考虑*/#include<iostream>usingnamespacestd;intmainf)(inti,j;intn;cout〈ぐ请输入N阶:";cin»n;/・如n=3i=0;j=0,pos=lj=l,pos=2j=2,pos=3i=lj=0,pos=2j=l/pos=3j=2,pos=li=2j=0,pos=3j=l,pos=lj=2,pos=2*/for(i=0;i<n;i++) /・控制行数・/(for(j=O;j<n;j++)/*控制每行输出的列的个数・/(intpos=(i+j)%n+l; /・输出每列数据・/cout«pos«")cout«endl; /*输完一行换行处理・/}system("pause");return0;}请输入N阶:6123456234561345612456123561234612345请按任意键继续・・・55/*09-06-1018:08题目:创建链表,存入数据并输出了解链表的概念:.链表由节点组成,每个节点有数据域和指针域节点组成链表.每ー个节点的指针域都指向下ー个节点的位置,最后一个节点指针域指向空.链表节点之间是不固定的思路总结:根据链表定义,用结构体定义节点,包括数据域和指针域,链表中需要定义三个变量头指针,新建节点指针,当前节点指针,头指针用于标示第一个节点,新建节点用于分配内存空间的一个标示,当前节点是ー个标示作用指针要学好*/#include<iostream>usingnamespacestd;*・定义链表结构*/structnode(intdata; /・数据域・/node*next; /・指针域・/node*Create(); "创建链表,返回链表的头指针・/voidDispalyListfnode*head); /・显示链表中的数据・//・主函数・/intmain()(node*head=Create();DispalyList(head);system("pause");return0;*・创建链表,返回链表的头指针*/node*Create()(intncode;/・节点数量・/intncount=0;/・计算创建节点的数量・/8UtV<"请输入需要创建节点的个数:";cin»ncode;node*pnew; /・新建节点・/node*pcur; /・当前节点・/node*head; /・链表头指针・/head=NULL; /・头指针开始为空・/if(ncode<1)(returnhead;/・当节点数少有1个时返回空指针・/)pnew=newnode; /・创建新节点・/cout<ぐ请输入存储链表的整数:";cin»pnew->data;/・向链表存入数据・/*・将节点添加到链表中*/while(1)iffNULL==head)/・头指针为空,移动头指针到新建节点处・/(head=pnew;}else /・头指针已指向ー节点,则当前节点指针指向新建节点・/(pcur->next=pnew;)pcur=pnew; /・指定当前节点・/ncount++; /・节点数加加・//・如果节点数量超过指点的节点数跳出循环ッif(ncount>=ncode)(break;)/・如果未达到指定的节点数,则重新创建节点输入存储数据・/pnew=newnode;
cin»pnew*>data;pcur->next=NULL; 〃最后的节点处理returnhead;显示链表中存储的数据*/voidDispalyList(node*head)node*pcur=head;/*当前节点指针指向第一个节点・/cout〈ぐ,链表存储的数据如下:"«endl;〃当前节点指针为结束指针向后移动不断扫描链表,直到最后节点ッwhile(pcur!=NULL) /・未到达最后节点*/cout«pcur->data«"";pcur=pcur->next;/*当前指针往后移动ッ)cout«endl;)个:个:1■点整下45■建表据54续创链数继養的12键書而奮二思入入存20任按4556随机函数的使用/*21-06-1022:13rand()函数:rand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的ー个大整数格式:a+rand()%n其中的a是起始值,n是整数的范围rand(void)用于产生一个伪随机unsignedint整数。srand(seed)用于给rand()函数设定种子。*/#include<stdio.h>include<iostream>#include<time.h>usingnamespacestd;#defineMAX10intmain(intargc,char*argv[])(srand((unsigned)time(NULL)); 〃srand()函数产生一个以当前时间开始的随机种子for(inti=0;i<10;i++)cout«rand()%MAX«endl;//MAX为最大值,其随机域为〇〜MAX・1//cout«(0.01*(rand()%MAX))«endl; 〃产生小数systemC'pause");return0;}80407979733117786"按任意键继续・・・57获取当前系统时间/*21-06-1022:37**tm结构定义了年、月、日、时、分、秒、星期、当年中的某一天、夏令时**用localtime获取当前系统时间,该函数将一个time_t时间转换成tm结构表示的时间,函数原型:structtm*localtime(consttime_t*)**使用gmtime函数获取格林尼治时间,函数原型:structtm*gmtime(consttime_t*)包含的头文件是time.h*///structtm{// inttm_sec;// inttm_min;// inttm_hour;// inttm_mday;// inttm_mon;// inttm_year;// inttm_wday;// inttm_yday;// inttm_isdst;//);〃系统函数的使用/*secondsaftertheminute-[0,59]*//*minutesafterthehour-[0,59]*//*hourssincemidnight-[0,23]*//*dayofthemonth-[1,31]*//♦monthssinceJanuary-[0,11]*//*yearssince1900*//*dayssinceSunday-[0,6]*//*dayssinceJanuary1-[0,365]*//*daylightsavingstimeflag*//・用字符串格式表示时间的函数。char*asctime(conststructtm*)char*ctime(consttime_t*)*/#include<iostream>#include<time.h>usingnamespacestd;voidShowtime(conststructtm*ptm){char*myweek[]={"日","一","二",,,三,,,"四",''五","六"};cout«ptm->tm_year+1900«""«ptm->tm_mon+l«""«ptm->tm_mday«"日"«"cout«ptm->tm_hourv〈"时"<<ptm・>tm_min<<“分"<<ptm・>tm_sec<<“秒“<<"cout<<”星期”<<myweek[ptm->tm_wday]<<””;cout<<”今天是今年的第”<<ptm・>tm_yday<<”夭”;cout«endl«endl;}intmain(){time_tnowtime;//typedeflongtime_t;在编译器定义的头文件中nowtime=time(NULL); 〃获取当前时间此时它是用ー个长整形表示的//cout«nowtime«endl;structtm*local,*gl;〃结构体时间变量local=localtime(&nowtime);〃获取当前系统时钟cout<<”当前时间是:";Showtime(local);cout<<”当前格林尼治时间是:";gl=gmtime(&nowtime);〃获取格林尼治时间Showtime(gl);system("pause");return0;}当前时间是:2010ヰ6方27日21时43分51秒星期日今天是今年的第177天当前格林尼治时间是:2010年6月27日13时43分51秒星期日今天是今年的第177天请按任意键继续...58.当前时间动态显示/*24-06-1010:44动态显示时间但不是最优的功能很单ー本程序关键是对时钟函数的使用**tm结构定义了年、月、日、时、分、秒、星期、当年中的某一天、夏令时**用localtime获取当前系统时间,该函数将一个time_t时间转换成tm结构表示的时间,函数原型:structtm*localtime(consttime_t*)**使用gmtime函数获取格林尼治时间,函数原型:structtm*gmtime(consttime_t*)包含的头文件是time.h♦///structtm{//inttm_sec;/*secondsaftertheminute-[0,59]*///inttm_min;/*minutesafterthehour-[0,59]*///inttm_hour;/*hourssincemidnight-[0,23]*///inttm_mday;/*dayofthemonth-[1,31]*///inttm_mon;/*monthssinceJanuary-[0,11]*///inttm_year;/*yearssince1900*///inttm_wday;/*dayssinceSunday-[0,6]*///inttm_yday;/*dayssinceJanuary1-[0,365]*///inttmjsdst;/*daylightsavingstimeflag*///);#include<iostream>#include<time.h>#include"dos.h"#include<windows.h>usingnamespacestd;intmain()(char*myweekロ={"日・,•一“,“ニッ“三“,“四”,”五,,,”六,,};time_tnowtime;//typedef longtime_t;在编译器定义的头文件中nowtime=time(NULL); 〃获取当前时间此时它是用ー个长整形表示的structtm*local;/・时间结构体变量・/local=localtimef&nowtime);〃获取当前系统时钟while(1)(coutvぐ当前时间为:cout«local->tm_year+1900«H年 "<<local・>tm_mon+l〈ぐ 月"«local->tm_mday«"H"«"cout«local->tm_hour«"时"«local->tm_min«"分"«local->tm_sec«"秒"«"cout«"M^"«myweek[local->tm_wday]«endl;/・对当前时间进行判断让它动态变化*/if(local->tm_sec==59&&localヤtm_min!=59)〃当秒到59,分未到59时分钟加1,秒清。(local->tm_min++;local->tm_sec=0;)〃当秒和分都为59时不为23时,秒和分钟都清0,时钟加1elseif(local->tm_sec==59&&local->tm_min==59&&local->tm_hour!=23)(local->tm_min=0;local->tm_sec=0;local->tm__hour++;)〃当秒和分都为59时为23时,秒,分钟和时钟都清。elseif(local->tm_sec==59&&local->tm_min==59&&local->tm_hour==23)(local->tm_sec=0;local->tm_min=0;local->tm_hour=0;)else〃其它情况秒钟进行不断加1(local->tm_sec++;)Sleep(1000);/*Sleep()里面的单位,是以毫秒为单位,所以如果想让函数滞留1
秒的话,应该是Sleep(lOOO);*/system("ds"); /*清屏命令出现动态显示・/}system("pause");return0;}I当前时间为:2010^6^27021时云芬2。秒星期日畧常平義:2010军6727日21電显山5團星嬴日60.递归的经典例子/*27-06-1018:13递归函数的经典例子将整数转换为字符ASSCI码,然后一位一位输出,要求使用递归方法‘〇’的assci是48,以后依次加1(0-9的assci码)*/#include<iostream>usingnamespacestd;voidBinary_to_assi(unsignedintnum);〃函数声明intmain()(unsignedintn;cout<ぐ请输入一个正整数:cin»n;coutvvncv"转换为字符是:Binary_to_assi(n);cout«endl;system("pause");return0;}/**************************************************/voidBinary_to_assi(unsignedintnum)unsignedinttemp=0;temp=num/10;〃取每一位temp=num/10;〃取每一位/・递归执行的过程如num=12首先num=12temp=0.num=12,temp=l,此时在堆栈上记录了2.if判断,在递归调用num=l,temp=0,此时在堆栈也做上记录退出在执行cout行,第一次输出1.销毁掉堆栈上的变量(上面第2步的变量)在执行cout行,输出2,销毁掉堆栈上的变量(上面第1步的变量)*/if(temp!=0) 〃递归的条件(Binary_to_assi(temp);〃递归调用自身)cout«(num%10+'0')-'0': 〃整形数字转换为字符数字}61.递归和迭代求n的阶乘/*27-06-1021:58*・递归和迭代求n的阶乘递归函数:调用本身的函数递归调用是在堆栈中创建变量空间,最后在销毁,销毁的顺序是先建立的堆栈后后销毁递归设计的开销:参数必须压到堆栈中,为局部变量分配内存,寄存器的值需保存,当递归每次调用时返回时,上述这些操作必须恢复原来的样子迭代法:也称辗转法,是ー种不断用变量的旧值递推新值的过程分析:递归求n的阶乘,每次递归都要产生一次递归,开销相对于迭代来说要大很多*/#include<iostream>usingnamespacestd;unsignedlongFactorial(intn); 〃递归求n阶乘unsignedlongFactorial_dt(intn); 〃迭代求n阶乘intmain()(intn;cout<ぐ请输入要求的阶乘数:cin»n;cout<<n<<"的阶乘是:"«Factorial(n)«endl;〃递归求解n的阶乘cout<<n<<"的阶乘是:"<<Factorial_dt(n)<<endl; 〃迭代求解n的阶乘system("pause");return0;}/*******************************************************/unsignedlongFactorialfintn)〃递归求n阶乘(if(n<=0)(return1;}else(return(n*Factorial(n-l));}}/*******************************************************IunsignedlongFactorial_dt(intn) 〃迭代求n阶乘条件换成了循环(intresult=1;while(n>1)result*=n;n-=1;)returnresult;}62./*27-06-1022:33递归函数:调用本身的函数递归调用是在堆栈中创建变量空间,最后在销毁,销毁的顺序是先建立的堆栈后后销毁递归设计的开销:参数必须压到堆栈中,为局部变量分配内存,寄存器的值需保存,当递归每次调用时返回时,上述这些操作必须恢复原来的样子迭代法:也称辗转法,是ー种不断用变量的旧值递推新值的过程分析:此程序中递归的开销远远大于迭代,每一次递归都产生两个递归,这连个递归在此递归就是4个递归迭代用一种循环的方法效率髙于它*/#include<iostream>usingnamespacestd;unsignedlongFibonacci(intn);〃递归求unsignedlongFibonacci_dt(intn); 〃迭代求intmain()(intn;cout<<“请输入要求的第n个斐波那契数:cin»n;coutくぐ第"<<n<ぐ个n个斐波那契数是:"«Fibonacci(n)«endl;〃递归求解n的阶乘cout<<"第"<<n<<"个n个斐波那契数是:"«Fibonacci_dt(n)«endl; 〃迭代求解n的system("pause");
return0;unsignedlongFibonacci(intn)〃递归求(if(n<=2)(return1;}else(return(Fibonacci(n-l)+Fibonacci(n-2));))unsignedlongFibonacci_dt(intn) 〃迭代求(intresult; 〃当前这个数intfirst; 〃当前数的前第二个数intsecond; 〃当前数的前第一个数result=1;first=1;while(n>2)(n-=1;//n减少second=first;first=result;result=second+first;}}要入nい要入nい意
A个个任
蘭1010按疲是是数・ア契契.契555563./♦28-06-1010:43字符串比较大小:ー个字符一个字符比较,当字符相同时进入下ー个字符比较,直到最后ー个字符*/#include<stdio.h>#include<iostream>#include<cstring> 〃字符串函数头文件usingnamespacestd;voidSwap(char*pl,char*p2);〃交换两字符串的值intmain()(charstrl[30];charstr2[30];charstr3[30];8Ut<ぐ请输入第一个字符串:";cin»strl;cout«"请输入第二个字符串:";scanf("%s",&str2);cout«"请输入第三个字符串:";scanf("%s",&str3);if(strcmp(strl,str2)>0){Swap(strl,str2);)if(strcmp(strl,str3)>0)《Swap(strl,str3);}if(strcmp(str2,str3)>0)Swap(str2,str3);
cout〈ぐ三字符串从小到大依次是:cout«strl«n"«str2«""«str3«endl;system("pause");return0;voidSwap(char*pl,char*p2)〃交换两字符串的值(chartemp[30];strcpy(temp,pl);strcpy(pl,p2);strcpy(p2,temp);八人入®子按从小,J大依次是:abdcabdcffnnt匚コ:abdc昂:八人入®子按从小,J大依次是:abdcabdcffnnt64/*28-06-1017:24符串比较大小:ー个字符一个字符比较,当字符相同时进入下ー个字符比较,直到最后一个字符*/#include<iostream>usingnamespacestd;voidComparefcharmystrl[],charmystr2[])J 〃比较两字符串函数的大小intmain()(charsl[30];chars2[30];cout<ぐ请输入第一个字符串:cin»sl:cout<ぐ请输入第二个字符串:cin»s2;
Compare(sl/s2);system(pause);return0;}voidCompare(charmystrl[],charmystr2[])(char*strl;char*str2;char*max=NULL;char*min=NULL;strl=&mystrl[0];〃指向数组的首地址str2=&mystr2[0];while(*(strl++)!='\0'&&*(str2++)!='\0')|if(*strl>*str2)〃交换两字符串的值(max=mystrl;min=mystr2;)elseif(*strl==*str2)(continue;}else(max=mystr2;min=mystrl;)}coutvv"两字符串从小到大排序是:"ccminvc""«max«endl;}ーニ从健个キ货生!ーニ从健个キ货生!abed个字符串:ABCDグ、到大排序是:继赛...ABCDabed65.字符串连接函数/*28-06-1019:42两字符串连接:一个字符串后面都有个结束符好へ〇’,两个字符串连接时必须把前ー个字符串的,、〇’去掉最后在连接好的字符串后面加个结束符号’、〇'分析:用ー个比较长的数组来保存两个字符串*/#include<iostream>usingnamespacestd;voidStrjink(charmystrl[],charmystr2[]); 〃字符串连接函数intmain(){charsl[50];chars2[50];8Ut<ぐ请输入第一个字符串:";cin»sl;cout〈ぐ请输入第二个字符串:cin»s2;Str_link(sl,s2);system("pause");return0;)voidStrjink(charmystrl[],charmystr2[]) 〃字符串连接函数(char*temp_str=newchar[100]; 〃动态申请存储空间intm=0;〃保存temp_str的下标inti;intj;for(i=0;i<50;i++)if(mystrl[i]=='\0')m=i;〃保存i的值break;}else(temp_str[i]=mystrl[i];}}for(j=0;j<50;j++)(if(mystr2[j]=='\0')(temp_str[m]='\0';〃给字符串添上结束符break;)else(temp_str[m]=mystr2[j];m++;}}coutvv"两字符串连接号后为:"«endl;cout«temp_str«endl;育簿人室一个孑位里:abcdl23青输入第二个字行串:efghjk456对学符南连接咅宿丸Lbcdl23efghjk456吉脍件咅地淞及 .递归求最大公倍数/*30-06-1014:09递归求最大公约数:Gcd(m,n)1.m%n=0nm%n=R(!=0)Gcd(m,R)迭代求解也是ー样最大公倍数=两数之积/最大公约数*/#include<iostream>usingnamespacestd;intGcd(intnumljntnum2); 〃递归求法intDiedai_Gcd(intnumljntnum2);〃迭代求法intmain()(intm,n;cout<ぐ请输入两个数:cin»m»n;cout<ぐ两数的最大公约数是(递归法):"«Gcd(m,n)«endl;cout<ぐ两数的最大公约数是(迭代法):"<<Diedai_Gcd(m,n)«endl;system("pause");return0;;}intGcd(intnumljntnum2) 〃递归求法(intr;if(numl%num2==0)(returnnum2;}else(r=numl%num2;//numl=num2;returnGcd(num2,r);}}intDiedai_Gcd(intnuml,intnum2) 〃迭代求法(intr;while((r=numl%num2)!=0)numl=num2;num2=r;returnnum2;)请输入两个数:18射数的曇大公约数是〈递归法》:两数的蠢大公约数是《迭代把〉:.数字金额转换大写汉字金额/*思路:根据输入的数字大小确认数字的是几位数以及位数的单位量比如输入10000共5位数,单位量为万(10000)然后根据位数在来进行转换用两个数字保存大写金额单位和大小汉字0到9,然后在根据位数进行对于査找先査找大写汉字,用ー个字符数组保存,在査找金额单位,在将其连接到字符串后面最后输出字符就。k了最大金额范围(0-9999999999999)13位数*/#include<iostream>#include<string>usingnamespacestd;char*Money_Change(longdoublemoney); 〃数字金额转为汉字金额函数声明intmain()(longdoublemoney;while(1)(cout〈ぐ请输入数字金额:cin»money;cout«Money_Change(money)«endl;}system("pause");return0;}char*Money_Change(longdoublemoney)〃数字金额转为汉字金额函数声明char*danwei[15]イ‘分","角","元","拾","佰","仟","万","拾","佰","仟","亿","拾","佰ソ・仟","万"};〃钱单位char*hz_shuzi[10]={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};〃汉字0-9staticcharstrresult[200];〃保存转换后汉字doubletemp; 〃保存输入钱数doublebase=1.0J 〃单位量整数¢10,100,1000,10000...)intn=0; 〃输入的金额有多少位数temp=money*100.0;strcpy(strresult,”转换后金额为:");if(temp<0.0)〃输入钱数为负数(strcpy(strresultj零元零角零分");else(/・如输入!2345temp=1234500l.base=10,temp=123450n=l2.base=100,temp=12345n=23.base=1000,temp=1234n=34.base=10000,temp=123n=45.base=100000,temp=12n=56.base=1000000,temp=1n=6temp<10退出*/while(temp>=10.0)〃输入钱数大于10计算输入钱数的位数(base=base*10;temp=temp/10.0;n++; /Z输入的金额有多少位数}if(n>=15)〃位数大于15(strcpy(strresult,"输入金额超出范围了!");)else/・此时temp=1234500,base=1000000,n=6
n=7;d=l; temp=234500;base=100000strcat(strresult,hz_shuzi[l]"壹"レstrcat(strresult,danwei[7]"万")n=6;*/temp=money*100.0;for(inti=n;i>=0;i-) 〃根据位数转换(intd=(int)(temp/base); 〃求每位的数字式多少temp=temp-base*(double)d;〃除去最高位数字,减一位后的的数字base=base/10.0;strcat(strresult,hz_shuzi[d]);〃字符连接strcat(strresult,danwei[i]);)}}returnstrresult;运黒襄请前ハ二手金额:12345运黒襄请那后金额为:壹万贰仟叁佰肆拾伍元零角零分前入数字金额:1258.55覆后金额为:壹仟贰佰伍拾捌元伍角伍分断入数字金额:123456789.68国后金额为:壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元陆角捌分前入数字金额:68.倒推法求解卡车沙漠存油问题倒推法解沙漠储油问题倒推法所谓倒推法,就是在问题的解或目标是由初始值递推得到的问题中,已知解或目标,根据递推关系,采用倒推手段,ー步步的倒推直至求得这个问题的初始陈述的方法。因为这类问题的运算过程是ーー映射的,故可分析其递推公式。看看下面的例题。例:贮油点问题
ー辆重型卡车欲穿过1000公里的沙漠,卡车耗汽油为1升/公里,卡车总载油能力为500公升(1升=1公升说500公升也是相同的)。显然卡车装一次油是过不了沙漠的。因此司机必须设法在沿途建立若干个贮油点,使卡车能顺利穿过沙漠。试问司机怎样建立这些贮油点?每ー贮油点应存储多少汽油,才能使卡车以消耗最少汽油的代价通过沙漠?1.首先要理解题目意思:路程总长度:1000km卡车耗油 1升/公里卡车满载油是500公升(升)问的问题是:]怎样建立这些贮油点ワ2.每ー贮油贏存储多少汽油,才能使卡车以消耗最少汽油的代价通过沙漠?从问题得:司机不但要设置储油站和每个站多少油,并且这些都要他自己去做也就是实际去实现。图19表示倒推时的返回点。用倒推法解析如下:m=0终点m—m=0终点m—1储油点m=2m=3…m=n起点图!9倒推过程用倒推法来解决这个问题,从终点向起点倒推,逐一求出每个贮油点的位置及存油量。声明:dis[n]为n点到终点的距离,oil[n]为n点储油量我们要明白一点:司机要自己去存油,就有走路程,并且还要运油.为了消耗最少的汽油,最后ー个储油点m=O应该离终点500公里,且此处储油500升(刚好用完满载的油,又可以过终点),即储油点m=l处离终m=O的距离是:dis[l]=500公里,储油量。il[l]=500升:
为了在m=l处储500升汽油,卡车最少从储油点m=2处开两趟载满油的车到储油点m=l处オ行(一次载500L»路上要消耗ー些,还得放ー些到m=l站点,所以要两次),则储油点m=2处要储油oil[2]=500*2=1000升オ可以,m=2离终点距:dis[2]=dis[l]+500^公里(储油点m=2处到储油点m=l处开两趟需要开三次路程)1=0500起点1=11=2图1=0500起点1=11=2图20倒推到第二步为什么要除以3?因为为了省油,m=2到m=l开两次花费掉满载的500升油(等于路程500km)把m=2站点的另500L油存到m=l站点,这是最省油的,总共用了3次如图20m=0
终点m=lm=0
终点m=l储油点m=2m=3""m=n起点.为了在储油点m=2处储1000升汽油,卡车最少从储油点m=3处开三趟载满油的车到储油点m=2处オ可在m=2站点存满1000升油,则储油点m=3处储油量:oil[3]=500*3=1500升,离终点dis[3]=dis[2]+500^公里(储油点m=3处到储油点m=2处开三趟需要开五次,得花费掉500升油,当然也就走了500km路程);m=0 m=1 m=2m=3''"m=n终点 储油点 起点.依次类推,为了在m=k处储oil[k]=k*500升汽油,卡车最少从m=k+l处开k+1趟满载油至m=k处,则储油点m=k+l处储油oil[k+l]=(k+l)*500,需要从m=k+l处到m=k处两地往返2k+l次路程,用总耗油最省方法要求500升(可m=0
终点m=0
终点m—1 m—2m=5…m=n储油点 起点走500公里),则储油点离终点距离:dis[k+l]=dis[k]+500/(2*k+l)(除以(2*k+l)是因在m=k到m=k+l共走(2*k+l)次耗油500L,路程也为500km,,.最后,反推至m=n站到起点距离为1000-dis[n],n站点储油为n*500升,为了在m=n处储n*500升汽油,卡车最少从起点开n+1次满载油至m=n处,需要开2*n+l次,总耗油量等于两点之间的距离乘以2*n+l次:(1000-dis[nJ):起点到n点的距离(2*n+l):为在n点存n*500升油需要从起点到n点的(2*n+l)次从起点到n点总耗油量:(1000-dis[n])*(2*n+l)L,即起点储油为(起点到n点的耗油量+n点到终点的耗油量(距离)):oil[n]+(1000-dis[n])*(2*n+l)=n*500+(1000-dis[n])*(2*n+l)o程序设计:多少站点,每个站点多少油?由上述分析得递推公式:(从终点往起点推得)设dis[i]为第i个储油点到终点(i=0)的距离:*oil[i]为第i个储油点的存储油量;・递推,dis[1]=500:oil[1]=500; //距离终点第一个站点dis[2]=dis[1]+500/3;oil[2]=500*2;//距离终点第二个站点dis[3]=dis[2]+500/5;oil[3]=500*3;*dis[k+1]=dis[k]+500/(2k+1);oil[k+1]=500*(k+1);//距离终点第k+1个站点・终点(起点):・距前ー储油点距离:1000-dis[n]?储油:oil[n]+(1000-dis[n])*(2n+1);/*02-07-1021:30卡车过沙漠存油问题:ー辆重型卡车欲穿过1000公里的沙漠,卡车耗汽油为1升/公里,卡车总载油能力为500公升(1升=1公升说500公升也是相同的).显然卡车装一次油是过不了沙漠的.因此司机必须设法在沿途建立若干个贮油点,使卡车能顺利穿过沙漠。试问司机怎样建立这些贮油点?每ー贮油点应存储多少汽油,才能使卡车以消耗最少汽油的代价通过沙漠?
程序设计:多少站点,每个站点多少油?由上述分析得递推公式:(从终点往起点推得)设dis[i]为第i个储油点到终点(i=0开始)的距离;*oil[i]为第i个储油点的存储油量:递推,dis[1]=500;oil[1]=500; //距离终点第一个站点dis[2]=dis[1]+500/3Soil[2]=500*2;//距离终点第二个站点dis[3]=dis[2]+500/5;oil[3]=500*3;*dis[k+1]=dis[k]+500/(2k-1);oil[k+1]=500*(k-1);//距离终点第k+1个站点・终点(起点):・距前ー储油点距离:1000-dis[n]:储油:+(1000-dis[n])*(2n-1);#include<iostream>usingnamespacestd;intmain()(//保存从n//保存从n点到终点的距离/Z保存站点储油量doubleoil[10];
doubledistance;/doubledistance;//保存站点到终点之间的距离/Z变量初始化oil_station_count=1; //指向距离终点的第一个站点distance =500;//指向从终点到第一个站点的距离为500kmdis[1]=500; //第一个站点到终点的距离为500kmoil[1]=500; //距离终点的第一个站点存石油500升cout<<" 卡车过沙漠储油问题!"<<endl;while(distance<=1000)//沙漠路程总长度为1000KM(oil_station_count++;//站点力口加distance=dis[oil_station_count-1]+500/(2*oil_station_count-1);//站点到终点的距离dis[oil_station_count]=distance; //保存该站点到终点的距离到数组中oil[oil_station_count]=oil_station_count*500;//保存该站点应该存的石油量}/Z处理终结点distance1000-dis[oil_station_count-1]; /Z从起点到起点开始的第一个站点的distance距离//起点应存油:起点到第一个点所耗油量+起点的第二个站点到终点的油量oil[oil_station_count]=distance*(2*oil_station_count-1)+oil[oil_station_count-1];/Z输出站点距离和油量coutvv”从终点开始,输出距离终点的第几个站点,距离和存油量[“vvendl;cout<<endl;for(inti1;i<=oil_station_count;i++)for(inticoutvV"离终点第'VVivV"站:距离终点”VVdis[i]VV"km应存油"<<oil[i]<<endl;system("pause");return0;卡车过沙復储油问题!从终点开始,输岀距离终点曲第几布站点,距离和存油量I离终点'、终点・终点离终点终点..终点离终点1站:距离终点离终点'、终点・终点离终点终点..终点离终点1站:距离终点2站:距建冬点3站:距离终点4站:距离终点’5站:距离终点6站:距离终点7站:距関终点8站:距南终点500km666km766km837km892km937km975km1000km全按任意键继续.1H日日日日日日日キ存存存存存存鼻应应应应应应应広500100015002000250030003500387569.报数除人"06-02-0403:04试题1n个人围成一圈,并依次编号1〜n,。从编号为1的人开始,按顺时针方向每隔ー人选出ー个,剩下的人重新围成一圈,如此循环直到剩下两人,这剩下的两人就是幸运儿。如果你想成为最后两个幸运儿,请问开始时应该站在什么位置?(设3<=n<=50)输入:开始时的人数n输出:第1行是选出顺序,第2行是两名幸运儿的开始位置(按升序排列),位置编号之间用ー个空格分开。*/#include<iostream>usingnamespacestd;intmain()(inta[100];intn;inti,j;cout<ぐ,请输入游戏人数:";cin»n;//inta[n];intsumnum=nJ 〃用来判断扫描后还剩几个人intncount=0J〃计算1-3/***往数组中存数字1-n7for(i=0;i<n;i++)(a[i]=i+1;}**对数组元素进行遍历操作,求出最后剩下的那个人7for(j=0;j<n;j++)(ncount=0J 〃保证第二轮重组数组元素可以重头开始for(intk=0;k<n;++k)if(a[k]==0) /・如果遇到为0,则证明它是被剔除出去的人不理睬进入对下个人的判断・/(continue;)else/*如果不为0证明此人还未退出ッ(ncount++;if(ncount==2&&sumnum!=2)/・如果ncount=2报数至(j2把此人剔除ncount置。总人数sumnum减减ッ(cout«a[k]«"ソa[k]=0;ncount=0;-sumnum;)))if(sumnum==2) /・如果只剩下最后一位人了跳出循环・/break;for(inti=0;i<n;i++) /・对数组进行循环遍历,那位不为〇,则打印出来・/(if(a[i]==0)(continue;}else(cout«endl;coutvc"最后剩下的是第"«a[i]«"个人!"vvendl;))svstem{"pause");return0;)70./*06-07-1020:36试题1n个人围成一圈,并依次编号1〜n,。从编号为1的人开始,按顺时针方向每隔s个人选出ー个,剩下的人重新围成一圈,如此循环直到剩下两人,这剩下的两人就是幸运儿。如果你想成为最后幸运儿,请问开始时应该站在什么位置?(设3<=n<=1000)输入:开始时的人数n输出:第1行是选出顺序,第2行是两名幸运儿的开始位置(按升序排列)。*/#indude<iostream>usingnamespacestd;intmain()(inta[1000]={0};intn;inti,j;ints;coutくぐ,请输入游戏人数:";cin»n;cout<ぐ输入报数到S个人删除;cin»s;intsumnumJ 〃用来判断扫描后还剩几个人sumnum=n;intncount=0;〃计算1-s*・往数组中存数字1-n7for(i=0;i<n;i++)(a[i]=i+1;)/***对数组元素进行遍历操作,求出最后剩下的那个人7for(j=0;j<n;j++)for(intk=0;k<n;k++)if(a[k]==0) /・如果遇到为0J则证明它是被剔除出去的人不理睬进入对下个人的判断・/(continue;)else/・如果不为0证明此人还未退出・/(ncount++;if(sumnum!=2&&(ncount==s))/・如果ncount报数至iIs把此人剔除ncount置口总人数sumnum减减・/(//cout«a[k]«"〃打印排除的人15a[k]=0;ncount=0;sumnum-;)}if(sumnum==2) /・如果只剩下最后一位人了跳出循环ッbreak;
for(inti=0;i<n;i++) /・对数组进行循环遍历,那位不为〇,则打印出来・/if(a[i]==0)(continue;}else(cout«endl;cout<<"最后剩下的是第"«a[i]«"个人!"<<endl;system("pause");return0;}请输入海药人数:888输入报教到S个人删除;123最后剩下的是第36个人!最后剰下的是《
请按任意键继纟40V个人!最后剰下的是《
请按任意键继纟71./*06-08-1014:45试题2在二维字符阵列中寻找指定的字符串。输入:前两行分别指示字符矩阵的宽w和髙h(l<=w<=80且l<=h<=80)。接下来的h行每行w个字符便是字符矩阵的内容,再下面的1行为要寻找的字符串的数目n(n<10),其后的n行便是要寻找的字符串,每个字符串不会超过20个字符。输出:n行,每行保存1个字符串的位置。位置的格式形如(1,2)->(2,6),意为该字符串首字母在字符矩阵中的位置是第1列2行,尾字母在字符矩阵中的位置是第2列6行。备注:如果某个字符串在字符阵列中出现多次,则只记录任意ー个出现位置即可。字符串出现的形式可能是水平、竖直、向前、向后和斜向。输出的位置顺序应该与输入中的字符串出现顺序一致。区分字符的大小写。分析:关键在于字符串的査找,査找又有一下几个问题.不同方向去查找,就分东,南,西,北,西北,东北,西南,东南八个方向去找,.把要査找的字符串分解成字符一个一个去査找.不能重复出现,用ー个标志位搞定这里用了flag还有一问题是最后结果的保存,要输入几组测试数据,我们用两个数组分别保存起点和终点的坐标,输出时,两两输出*/#include<iostream>usingnamespacestd;intmain()(〃字符阵列的录入和输出intm,n;intij;intncount; 〃输入查找的次数charsearch[30]J 〃要查找的字符串coutくぐ请输入字符矩正的行和列宽ブ;cin»m»n;char**mych=newchar*[m];for(inty=0;y<=m;y++)(mych[y]=newchar[n];for(intq=0;q<=n;q++)(mych[y][q]=0J〃初始化为0cout<ぐ输入矩正字符3Vvendl; 〃第一列不用for(i=l;i<=m;i++)(for(j=l;j<=n;j++)(cin»mych[i][j];})〃显示矩正字符coutくぐ,输入的字符是:"<<endl;for(i=l;i<=m;i++)(for(j=l;j<=n;j++)(cout«mych[i][j]«"}cout«endl;〃输入查找次数和要查找字符串coutくぐ请输入查找次数:cin»ncount;getchar();〃屏蔽确认键因为下面输入查找字符用getchar»它会接受任何intki=0;〃记录输入字符的下标intmys=0,mye=0J〃用于start[30],end[30]的下标,必须放于此处intstart[30]={0},end[30]={0}J 〃保存査找字符在字库中的起始和结束坐标位置for(inta=0;a<ncount;a++)(for(intb=0;b<30;b++)/Z每次输入的字符不同,所以每次要清零searchsearch[b]=0;ki=0;cout<<"请输入要查找的字符串(少于20个字符):while((search[ki]=getchar())!='\n')ki++;〃字符比较査找首先找到要査字符的首字母,然后在从第一个字符开始,往八个方向去比较intstar,overJ〃保存首字符在二维字库中的坐标star=0;over=0;intflag=0; 〃找到首字符,但后面的字符不匹配的标志for(i=l;i<=m;i++) 〃査找要找字符串的首字符for(j=l;j<=n;j++)if(flag==1) //避免输出重复的break;if(mychU][i]==search[0])〃找到首字符star=j;over=I;〃保存在起始位置
start[mys]=start[mys]=over;〃列坐标start[mys+l]=star; 〃行坐标〃开始匹配要查找的字符匹配写在字库中有利于都整个数据都查找完for(intej=over;ej<(over+ki);ej++)〃往正东査找ki个字符(g++;if(mych[star][ej]!=search[g]11over+ki-l>n)//只要有一个字符不相等就跳出循环(g=-l;break;}else(if(ej==(over+ki-l))〃比较到最后ー个字符如果都是ー样保存结束字符的坐标(end[mye]=ej;end[mye+l]=star;〃加1表示坐标从1开始的ー个査找做准备mye=mye+2;flag=1;for(intwj=over;wj>(over-ki);wj-)〃往正西方向{g++;if(mych[star][wj]!=search[g]11over-ki+l<l)//只要有一个字符不相等就跳出循环(g=-l;break;)else(if(wj==(over-ki+l))〃比较到最后ー个字符如果都是ー样保存结束字符的坐标end[mye]=wjJ〃列坐标end[mye+l]=star; 〃行坐标mys=mys+2J〃起点位置加2为下ー个査找做准备mye=mye+2;flag=1;))}for(intsi=star;si<(star+ki);si++)〃往正南方向{g++;if(mych[si][over]!=search[g]11star+ki-l>m)//只要有一个字符不相等就跳出循环(g=-l;break;)else(if(si==(star+ki-l))(end[mye]=over;end[mye+l]=si;个査找做准备mye=mye+2;flag=1;)))for(intni=star;ni>(star-ki);ni-) 〃往正北方向{g++;if(mych[ni][over]!=search[g]11star-ki+l<l)〃只要有一个字符不相等就跳出循环(g=-l;break;)else(if(ni==(star-ki+l))(end[mye]=over;end[mye+l]=ni;mys=mys+2;〃起点位置加2为下ー个査找做准备mye=mye+2;flag=1;))}intwni,wnj;for(wni=star,wnj=over;wni>(star-ki)&&wnj>(over-ki);wni--,wnj-) 〃往西北方向(g++;if(mych[wni][wnj]!=search[g]11star-ki+l<l11over-ki+l<l)(g=-l;break;}else(if(wni==(star-ki+l)&&wnj==(over-ki+l))(end[mye]=wnj;end[mye+l]=wni;ー个査找做准备mye=mye+2;)}inteni,enj;for(eni=star,enj=over;eni>(star-ki)&&enj<(over+ki);eni-,enj++) 〃往东北方向(g++;if(mych[eni][enj]!=search[g]11star-ki+l<l11over+ki-l>n)(g=-l;break;}else(if(eni==(star-ki+l)&&enj==(over+ki-l))(end[mye]=enj;end[mye+l]=eni;ー个査找做准备mye=mye+2;)}intwsi,wsj;for(wsi=star,wsj=over;wsi<(star+ki)&&wsj>(over-ki);wsi++,wsj--)〃往西南方向(g++;if(mych[wsi][wsj]!=search[g]11star+ki-l>m11over-ki+l<l)(g=-l;break;}else(if(wsi==(star+ki-l)&&wsj==(over-ki+l))(end[mye]=wsj;end[mye+l]=wsi;ー个査找做准备mye=mye+2;)}intesi,esj;for(esi=star,esj=over;esiv(star+ki)&&esj<(over+ki);esi++,esj++)〃往东南方向(g++;if(mych[esi][esj]!=search[g]11star+ki-l>m11over+ki-l>n)(g=-l;break;}else(if(esi==(star+ki-l)&&esj==(over+ki-l))(end[mye]=esj;end[mye+l]=esi;ー个査找做准备mye=mye+2;)}}else 〃如果全查找完毕都未找到要查字符的首字符将要保存的数据置0,下标要加2(if(i==m&&j==n)(start[mys]=0J〃列坐标start[mys+l]=0J 〃行坐标end[mye]=0;end[mye+l]=0;mys=mys+2J 〃起点位置加2为下ー个査找做准备mye=mye+2;)})72.・宀xxx子数的的的的找72.・宀xxx子数的的的的找查查查查查要裏要要bEP常输補常输个个个个0000ァモ于于少少少少呂呂呂呂请按任意键继续..〃显示结果cout«endl;cout<ぐ起点坐标(列,行)ー〉终点的坐标(列,行),未找到坐标中出现。〇)!"«endl;for(intp=0;p<2*ncount;p++)(cout«"("«start[p]«","«start[p+l]«")->"«"("«end[p]«","«end[p+l]«")"«endl;P++;}system("pause");return0;)<3,2>-><1,2><3,3>-><3,1>1,!〉ー>く3,3〉<0,0>-><0,0>/*07-07-1023:48例题四给ー维数组输入任意6个整数,假设为:748915请建立一个具有以下内容的方阵:748915489157891574915748157489574891分析:由上得从第二行开始,第一个数等于上一行第二个数,第二个数等于上一行第3个数…最后ー个数等于上一行的第一个数可用一个二维数组数据,先往第一行输入6个数字作为下一行输出的ー个标准,在以上述规律进行输出*/#include<iostream>usingnamespacestd;intmain()(inti,j;intn;〃往第一行中写入标准数cout<ぐ请输入几阶拉丁数字:cin»n;inta[n][n];cout<<"请输入"<<n<ぐ,个数字:";for(i=0;i<l;i++)(for(j=0;j<n;j++)(cin»a[i][j];})〃输出拉丁矩阵for(i=0;i<n;i++)(for(j=0;j<n;j++)(if(i>0) 〃从第二行开始(a[i]U]=a[i-l]U+l];〃每个数等于其右上角的数a[i][n-l]=a[i-l][0]; 〃每行最后一个数等于其上一行的第}cout«a[i][j]«")cout«endl;〃输出一行就换一行}system("pause");return0;}63456123456234561345612456123561234612345请按任意键继续・・・73/*3*3矩阵,横竖对角都等于一个恒值(15)分析:建立一个3*3二维数组a[3囘,将num=l赋值给a[0][1],然后保存其下标,a[O][l]的右上角的值等于num++,依次循环,对于下标,肯定会越界,这里使用intki=(i-l+3)%3;intkj=(j+l)%3;便可解决如果右上角的位置有元素的话,则将num++赋值给其正下方的位置*/#include<iostream>usingnamespacestd;intmain()(inti,j;inta[3][3]={0}J〃初始化为空,一定要初始化intnum=1;i=0;j=l;a[0][l]=num;for(num=2;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行行有贡献教学设计小学综合实践活动安徽大学版五年级下册-安徽大学版
- Kafka面试高频题目与详细答案
- 人教版九年级信息全第二单元第十课顺序结构程序设计(1课时)教学设计
- 变压器中性点接地施工工法
- 三 稳态的意义教学设计高中生物北师大版必修3稳态与环境-北师大版
- CN119403194A 制造半导体器件的方法 (瑞萨电子株式会社)
- CN119402678A 一种金融行业直播智能实时质检方法与系统 (杭州高顾智能科技有限公司)
- 人教部编版第14课文艺复兴运动教学设计
- CN119402506A 同账号多客户端数据快速同步方法及系统 (杭州九麒科技有限公司)
- T∕CPSS 96-2026 火电机组辅机低压变频器高低电压穿越能力测试规范
- 2026黑龙江省纪委监委直属事业单位公开招聘14人考试备考题库及答案详解
- 2026年上海市闵行区政务服务中心(窗口人员)招聘考试参考试题及答案详解
- (2026年秋)人教版五年级上册数学教案
- 2026年7月4日广东初级注安《建筑施工安全》真题卷
- 围标串标现象深度透析
- 2026秋教科版(新教材)小学科学六年级上册(全册)教学设计(附目录p276)
- 2026西藏拉萨市市直机关事业单位遴选(招聘)公务员(工作人员)19人考试备考试题及答案详解
- 2026年高考全国1卷语文高考真题含答案
- 2026旅游业市场需求分析及投资发展前景规划分析报告
- 急性有机磷农药中毒应急预案演练脚本
- 国企工程管理岗笔试试题及答案
评论
0/150
提交评论