资源描述:
《C程序设计的实验内容1》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、C程序设计的实验内容第四次实验:实验题目:逻辑结构程序设计实验内容:仁上机运行下面程序,并分析结果:(1)main(){inta=1,b=2,m=0,n=0,k;k=(n=b>a)
2、
3、(m=a5)printf(“%d”,m++);elseprintf(“%d”,m—);}该程序的结果是:6o⑶main(){int
4、a=10,b=11rc=12,d;printf(“%d”,a>c?a:c?d=a>b:b);}该程序的结果是0。本题主要考察了学生对条件表达式的进一步理解。因为第一个条件表达式的值是第二个条件表达式的值,对于第二个条件表达式,C的值为非0,所以它的值为赋值表达式d二a>b的值,所以该程序的最终运行结果为0。注:以上3道题主要提高学生对一些常见的但是又容易出现错误的表达式的正确理解。2.要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。《上机指导》书的实验4(250页)实验内容的第3道
5、题可以不做。追加一道题(共4道编程题):已知某天的年月日,编程计算该天是这一年的第几天。程序如下:main(){unsignedinty,m,d^n;intf;printf(uInputy,m,d:“);scanf(“%d,%d,%d",&y,&m,&d);仁(y%4==0&&y%100!=0
6、
7、y%400==0);n=d;switch(m-l){casell:n+=30;case10:n+=31;case9:n+=30;case8:n+=31;case7:n+=31;case6:n+=30;case
8、5:n+=31;case4:n+=30;case3:n+=31;case2:n+=28+f;casel:n+=31;}printf(un=%d”,n);}第五次实验:实验名称:循环控制实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1•输入两个正整数m和n,求它们的最大公约数,要求用3种方法实现。方法一:main(){intn,m,t,r;scanf(u%d,%d5&n,&m);if(n9、=r;}printf(u%d”,n);}方法二:main(){intm,n,minj,p;scanf(“%d%d",&m,&n);min=m=l;j-)if(m%j==0&&n%j==O)break;printf(“%d”j
10、);}2•习题6・6,要求用两种方法实现。方法一:main(){intIj,k,n;for(n=100;n<1000;n++){I=n/100;j=n/10-I*10;k=n%10;if(n==I*I*I+j«j*j+k*k*k)printf(%4d,);}priiitf(5”);}方法二:main(){intfor(I=l;I<=9;I++)for(j=0;j<=9;j++)for(k=0;k<=9;k++){n=I*100+j*10+k;if(n==I*I*I+j*j*j+k*k*k)prin
11、tf(%4d,,,n);printf('W');}注:以上两道题主要是开拓学生算法与编程的思路,同一个问题可以用不同的算法来实现,但是算法之间也是有优越性差别的,一般来说循环次数最少的算法是最好的算法。3•习题6.10o注:该题主要锻炼学生递归与递推编程思路。4•习题6・12。注:该题主要提高学生利用C语言这个有力工具,去解决基本的代数问题,让学生明白常用的代数算法在计算机中的实现方法。5•习题6・14。6•运行课本115页例6・5和课本118页例6・9。注:通过这两道例题的运行,主要让学生把cont
12、inue与break语句的区别搞清楚。第六次实验数组实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1・冒泡法排序。注:运行课本124页例题7・3。2•选择法排序,习题7・2。3•折半查找法,习题7.9。4•将两个字符串连接起来,不要用strcat函数,习题7・13。5•二维数组的“鞍点”问题,习题7.8o注:《上机指导书》59页所给出的习题7.8的答案有误,主函数中第一行的变量声明中多了一个变量maxi,应该把其去掉。以上五道