C语言程序设计实验报告5
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include "stdio.h" void sort(int x,int y) {
int z; printf("x=%d,y=%d\n",x,y); if(x>y) {
z=x;x=y;y=z; } printf("x=%d,y=%d\n",x,y); } void main() { int a,b; 实验内 scanf ("%d%d",&a,&b); 容 printf("a=%d,b=%d\n",a,b); 及 sort (a,b); 主要步 printf("a=%d,b=%d\n",a,b); 骤} 4. 程序的函数分解,多训练,“自顶向下逐步求精、分 而治之”
printf(" "); weekday=firstday; for(i=1;i<=days;i++) {
printf("%3d",i); weekday+=1; if(weekday%7==0) printf("\n"); } } int isleapyear (int year) { return (year%4==0 && year%100!=0 || year%400==0); } 1)对于些复杂的程序可以分成若干小部分来处理,最后 实践经 综合起来,问题一般就可以解决 验 2)函数可以降低程序的规模,提高程序的可读性 及 3)函数还可减小程序修改的复杂性,实现软件复用 问题分4)注意在主函数中要声明被调用的函数, 函数类型一定要 析 分清 5)多训练分析问题的能力,想想怎么把一个问题程序化
}
for(i=1;i<month;i++)//计算月的
{
days+=daysinmonth(year,i);
days=days%7;
}
days=(days+day)%7;
return days;
}
int daysinmonth (int year,int month)
{
switch (month)
{
float max(float,float); float a,b,c; printf("\n请输入两个数:"); scanf ("%f%f",&a,&b); c=max(a,b); printf("max is %.2f\n",c); } 2. #include "stdio.h" void printcalendar(int,int); int weekday(int,int,int); int daysinmonth (int,int); void printheader (int,int); void printbody (int,int); int isleapyear (int); void main() { int year,month; printf("Please input year and month:"); scanf("%d%d",&year,&month); printcalendar (year,month); } void printcalendar(int year,int month) { int firstday,days; firstday=weekday (year,month,1); days=daysinmonth (year,month); printheader (year,month); printbody (firstday,days);
5. C程序的变量,局部变量与全局变量:在不同的函数 中定义的变量互不干扰,即使是相同名称的变量, 它们代表不同的对象,不同的函数中和变量可以重 名
6. 变量的动态与静态存储方式,例
栈区 存储方 向
堆区 存储方 向
静态存储区
程序区
1. #include "stdio.h" float max(float x,float y) { return (x>y?x:y); } void main() {
}
int weekday(int year,int month,int day) //来求某年某月的第
一天为星期几
{
int days=0,i;
for(i=1990;i<year;i++) //寻找年的参照日
实验 程序清
单
{ days+=365; if(isleapyear(i)) days+=1; days=days%7;
}
}
void printheader (int year,int month)
{
printf("\t%4d年%2d月\n",year,month);
printf(" 日 一 二 三 四 五 六\n");
}Fra Baidu bibliotek
void printbody (int firstday,int days) { int i,weekday; for(i=0;i<firstday;i++)
《程序设计基础》实验报告单
班级
学号
姓名
实验时 间
实验地点
实验题 目
实验五:C程序结构与函数
实验目 的
1. 学习掌握C语言程序的基本结构 2. 掌握函数的定义和调用方法,掌握函数调用时实
参和形参间的值传递关系 3. 掌握函数的嵌套和递归调用 4. 掌握局部变量、全局变量的使用及变量的存储类
型
实验要 求
1. 掌握C语言程序的基本结构 2. 掌握函数的嵌套和递归调用 3. 掌握局部变量、全局变量的使用及变量的存储类
型
1. 下面的程序中主函数调用max()函数来比较两个浮点 数的大小 ,在程序清单的例一;
2. 函数的嵌套使用,
3. 函数的值传递,要记住只能单向传递,实参与形参 的类型应一致,否则将发生“类型不匹配”而得到错 误的结果。字符型与整型可以互相通用
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
return 31;
case 4: case 6: case 9: case 11: return 30;
case 2:
if(isleapyear (year)) return 29;
else return 28;