非计算机专业c语言基础算法

非计算机专业c语言基础算法

ID:17540211

大小:58.50 KB

页数:18页

时间:2018-09-02

非计算机专业c语言基础算法_第1页
非计算机专业c语言基础算法_第2页
非计算机专业c语言基础算法_第3页
非计算机专业c语言基础算法_第4页
非计算机专业c语言基础算法_第5页
资源描述:

《非计算机专业c语言基础算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、此文档仅为非计算机专业学生考试而写,此文档包含的算法均是基础的算法,非计算机专业考试考到的可能性很大,有些算法可能都是原题考查。考查是考的最多的算法是:交换、排序、查找。而其中最关键的是循环,他们都是一循环为基础的。其次是交换交换,好多算法里都涉及到交换问题。先说最简单的交换:实现两数之间的交换的方法是:定义一个中间变量,然后借助中间变量进行两两交换。#includevoidmain(){//简单演示两数交换算法实现intnum1=1,num2=2;intmid;mid=num1;mun1=num2;num2=mid;}经典例题://输入三个整数a

2、bc,由小到大输出。#includevoidmain(){inta,b,c,mid;scanf("%d%d%d",&a,&b,&c);if(a>b){mid=a;a=b;b=mid;}if(a>c){mid=a;a=c;c=mid;}if(b>c){mid=b;b=c;c=mid;}printf("%d,%d,%d",a,b,c);}接下来是最关键的循环:循环用到最多的是for循环,其次是while循环,dowhile最不常用到。写循环式最关键的就是找规律,找到问题的规律,就能正确的确定跳出循环的条件,此时循环已经完成大半了,剩下的就是循环体了,循

3、环体根据题意来进行输入、输出、赋值、交换等操作。循环输入及输出:#includevoidmain(){intnumber[5][6];inti,j;for(i=0;i<5;i++){for(j=0;j<6;j++){scanf("%d",&number[i][j]);}}for(i=0;i<5;i++){for(j=0;j<6;j++){printf("%d",number[i][j]);}}}循环问题的题就多了去了,需要平时不断地积累,在此只列举几个具有代表性的例题://阶乘计算#includevoidmain(){intnum

4、;inti;printf("输入一个数:");scanf("%d",&num);intresault=1;//注意一个技巧,在计算和时赋初值0,计算积时赋初值1for(i=1;i<=num;i++){resault*=i;}printf("%d",resault);}循环中有类有趣的题型是图形的输出:#includemain(){inti,j,k;for(i=1;i<5;i++){for(j=1;j<=4-i;j++)printf("");for(k=1;k<=2*i-1;k++)printf("*");printf("");}inta,b

5、,c;for(a=3;a>=1;a--){for(b=1;b<=4-a;b++)printf("");for(c=1;c<=2*a-1;c++)printf("*");printf("");}}此类问题还有很多,比如:矩形,梯形,三角形,包括实心与空心,还有就是用星号画字母入C,E,K等。此类问题的关键仅仅是找规律,多做几个,分析几个就行了。再者就是对于数组的循环遍历了。排序:排序有很多种,有两种最基本的是简单选择法和冒泡法,考试找一种自己能理解了的掌握就可以了。简单选择法:#include#defineM5voidmain(){intb[M]

6、,i,j,t,k;for(i=0;ivoidmain(void){inti,j,t;inta[5];for(i=0;i<5;i++){scanf("%d",&a[i]);}for(i=0

7、;i<5-1;i++){for(j=0;j<(5-1)-i;j++){if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}}printf("Thesortednumber:");for(i=0;i<5;i++){printf("%d",a[i]);}printf("");}这两种方法运行原理解释起来挺麻烦的,有兴趣研究的可以百度一下。查找:方法同样很多,考试用的到的是二分法查找。二分法://最大公约数//公倍数是两数相乘除公约数#includemain(){intm,n,u,t;printf("qin

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。