广州大学C程序设计III实验四报告.docx
- 文档编号:29215355
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:13
- 大小:408.94KB
广州大学C程序设计III实验四报告.docx
《广州大学C程序设计III实验四报告.docx》由会员分享,可在线阅读,更多相关《广州大学C程序设计III实验四报告.docx(13页珍藏版)》请在冰豆网上搜索。
广州大学C程序设计III实验四报告
学院
机械与电气工程
年级、专业、班
电气145
姓名
沈伟坤
学号
1407300207
课程名称
C程序设计III
实验项目名称
数组与函数程序设计
广州大学学生实验报告
一、实验目的
(1)熟练掌握一维和二维数组的定义和数组元素的引用方法。
(2)学习一维和二维数组的基本算法。
二、实验设备
实验设备要求每个学生一台电脑,并需装有VC++6.0程序。
三、实验内容
(一)编写程序,输入10位同学成绩,并按从大到小的顺序排序(文件名:
ch04_1.cpp)
#include
intmain()
{
staticintx[11];
inti,a,trans;
printf("请输入10个同学的成绩:
\n");
for(i=1;i<=10;i++)scanf("%d",&x[i]);
for(i=1;i<=10;i++)
for(a=1;a<=10-i;a++)
if(x[a]>x[a+1])
{trans=x[a];x[a]=x[a+1];x[a+1]=trans;}
for(i=1;i<=10;i++)
printf("%d,",x[i]);
return0;
}
(二)先输入10个有序数据(从小到大),然后再输入一个数,并将此数按原序插入,最后输出新的数列。
(文件名:
ch04_2.cpp)
#include
intmain()
{
intx[10];
inti,n,a=1,b;
printf("请输入10个由小到大的整数:
\n");
for(i=0;i<10;i++)scanf("%d",&x[i]);
printf("请再输入一个数:
");
scanf("%d",&b);
for(i=0;i<10;i++)
{
if(x[i]>=b&&a==1)
{
printf("%d\n",b);
a=a-1;
}
printf("%d\n",x[i]);
}
return0;
}
(三)完成下列程序:
程序功能为:
输出指定行数的杨辉三角形(文件名:
ch04_3.cpp)
#include
voidmain(void)
{inta[50][50],i,j;
/*提示请输入杨辉三角形行数*/
/*用scanf()输入杨辉三角形行数*/
/*用循环计算杨辉三角形各个值*/
/*用printf()输出杨辉三角形*/
}
#include
intmain()
{
inti,n,a,z,x[50][50];
printf("请输入杨辉三角行数");
scanf("%d",&i);
for(z=0;z<50;z++)
x[z][0]=x[z][z]=1;
for(n=2;n<50;n++)
{
if(n>=i)break;
for(a=1;a } for(n=0;n { for(z=1;z<=i-n;z++)printf(""); for(a=0;a<=n;a++)printf("%5d",x[n][a]); printf("\n"); } return0; } (四)编写程序,输入一个3*3矩阵各元素,并求3*3矩阵中主对角线各元素之和和次对角线各元素之和。 (文件名: ch04_4.cpp) #include intmain() { intn,i,x[3][3]; printf("pleaseinput9numbers: "); for(n=0;n<=2;n++) for(i=0;i<=2;i++) scanf("%d",&x[n][i]); n=x[0][0]+x[1][1]+x[2][2]; i=x[0][2]+x[1][1]+x[2][0]; printf("rightsumis%d,leftsumis%d",n,i); return0; } (五)编写程序,输出1~100之间所有素数,(要求编写判别素数的函数)(文件名: ch04_5.cpp) #include intprime(intn) { inti; for(i=2;i<=n-1;i++) { if(n%i==0){return0;break;} } } intmain() { inta; for(a=2;a<=100;a++) if(prime(a)! =0)printf("%d",a); return0; } (六)编写程序,输入年月日,请计算从公元元年1月1日到输入的年月日一共经历了多少天(要求编写判断闰年函数和验证年月日的合法性函数)(文件名: ch04_6.cpp) #include intleapyear(intn) { if(n%4==0&&n%100! =0)return1; if(n%400==0)return1; elsereturn0; } intjudge(intyear,intmonth,intday) { inta=1,b=1,c=1; intx[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; if(leapyear(year)==1)x[2]=29; if(year<=0)a=0; if(month<=0||month>=13)b=0; if(day>x[month])c=0; returna*b*c; } intmain() { intx[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},i,n,days=0; intyear,month,day; printf("pleaseinputdate: suchas1995.1.1\n"); scanf("%d.%d.%d",&year,&month,&day); if(leapyear(year)==1)x[2]=29; while (1) { if(judge(year,month,day)==0) {printf("datewrong,pleasetryagain\n"); scanf("%d.%d.%d",&year,&month,&day);} if(judge(year,month,day)==1)break; } for(i=1;i { if(leapyear(i)==1)n=366; elsen=365; days=days+n; } for(i=1;i { days=days+x[month]; } days=days+day; printf("从公元元年至%d年%d月%d日共经历了%d天",year,month,day,days); return0; } (七) 编写程序,已知图中3个三角形均为等边三角形,且小三角形的边长是大三角形边长的一半,从键盘输入大三角形边长,调用三角形面积函数,计算阴影部分面积。 (文件名: ch04_7.cpp) #include #include intmain() { floata,b,c,s,p; inti=2; while(i--) { printf("请输入等边三角形的边长"); scanf("%f",&a); b=c=a; putchar('\n'); s=(a+b+c)/2; p=sqrt(s*(s-a)*(s-b)*(s-c)); printf("bigarea=%.2f\n",p); printf("darkarea=%.2f\n",p/2); } return0; } (八)编写程序,输入整数n,输出高度为n的等边三角形。 (要求编写输出三角形的函数)(文件名: ch04_8.cpp) 比如: 当n=5时的等边三角形如下: * *** ***** ******* ********** #include intmain() { inti,n,h,a; printf("pleaseinputh: "); scanf("%d",&h); for(i=0;i<=h;i++) {for(n=1;n<=h-i;n++) printf(""); for(a=0;a<=2*i;a++) printf("*"); printf("\n"); } } 四、实验过程及最终效果(完成的代码及屏幕截图) 实验代码: 实验结果: 五、实验结果分析和实验心得:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 广州大学 程序设计 III 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)