重庆理工大学c语言实验答案

上传人:第*** 文档编号:57980853 上传时间:2018-10-25 格式:DOC 页数:16 大小:60.50KB
返回 下载 相关 举报
重庆理工大学c语言实验答案_第1页
第1页 / 共16页
重庆理工大学c语言实验答案_第2页
第2页 / 共16页
重庆理工大学c语言实验答案_第3页
第3页 / 共16页
重庆理工大学c语言实验答案_第4页
第4页 / 共16页
重庆理工大学c语言实验答案_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《重庆理工大学c语言实验答案》由会员分享,可在线阅读,更多相关《重庆理工大学c语言实验答案(16页珍藏版)》请在金锄头文库上搜索。

1、实验实验 7 和和实验实验 8 今天完成,主要是今天完成,主要是验证验证性性 实验实验,下次,下次实验实验开始做考开始做考试试系系统统 实验实验 7 函数函数实验实验 完成实验完成实验 1、2、3、5、6、8、9、11、12,其余选作,其余选作 一、一、 实验目的实验目的 (1) 理解函数定义的方法。 (2) 掌握函数实参与形参的对应关系,以及函数”参数传递”的方式。 (3) 掌握函数的嵌套调用和递归调用的方法; (4) 掌握全局变量和局部变量、动态变量、静态变量的概念和使用方法。 二、二、 实验任务实验任务 1基本内容 【题目 1】以下程序是求 3 个数中的最大值,请完善程序并上机验证。 #

2、include void main() int a,b,c,m; int max(int x,int y); /* 函数声明*/ printf(“input a,b,c=“); scanf(“%d,%d,%d“, m=max(max(a,b),c); printf(“最大值是:%dn“,m); int max(int x,int y) /*函数定义*/ int z; z=(xy)?x:y; return z; 【题目 2】程序填空:子函数中判断一个大于 1 的整数是否是素数,数据由主函数中 输入,并在主函数中显示结果。 #include void main() int number; int

3、prime(int number); printf(“请输入一个正整数:n“); scanf(“%d“, if ( prime(number) ) printf(“n %d 是素数:“,number); else printf(“n %d 不是素数:“,number); int prime(int number) /*请注意区别 main 函数和 prime 函数中的 number 变量*/ int flag=1,n; for (n=2; flag=1 int f(int a, int b); p=f(i,i+=1); printf(“%dn“,p); int f(int a, int b)

4、int c; if(ab) c=1; else if(a=b) c=0; else c=-1; return(c); 将程序中第 4 行语句:p=f(i,i+=1); 改为以下语句,比较程序结果: p=f(i+=1,i); 实践说明,函数的参数求值顺序是:从右向左:从右向左 【题目 4】编程在主函数中输入和输出字符串,在子函数中实现一个字符串按反序存 放。 【题目 5】用子函数计算 4 名学生的平均分。标注“error”处有错误,请改正。 #include #define N 4 float average(float array) /* 注意数据类型的一致 */ int i; float a

5、ver,sum=0; for (i=0;i void main() int a3=0,2,4,6,8,10,12,14,16,sum; int func(int a3); /*函数声明*/ sum=func(a); /*error*/ printf(“n sum=%dn“,sum); int func(int a3) /*error*/ int i,j,sum=0; for(i=0;i int fun1(int x, int y) int temp; if (x int a=4,b=6; int max(int a,int b) int c; c=ab?a:b; return c; void

6、main() int a=9; printf(“%dn“,max(a,b); 【题目 12】以下是一个求 1-10 累加和的错误程序,请改正。 #include void main() int i,s; int sum(int j); for(i=1;i void convert(int n) int i; if (i=n/10)!=0) /*_*/ convert(i); putchar(n%10+0); /*_*/ void main() int number; printf(“n 输入整数:“); scanf(“%d“, printf(“n 输出字符是:“); if (number vo

7、id main() int x=1,y=2, *p, *q; p= /* error*/ q= /* error*/ printf(“x=%d,y=%dn“,x,y); printf(“ printf(“p=%d,q=%dn“,p,q); printf(“p=%d,q=%dn“,*p,*q); 【题目 2】请预测程序的结果,并上机运行程序,验证结果。 #include void main() int a=1,3,5,7,9,11,13; int *p=a; printf(“1-%dn“,*p); printf(“2-%dn“,*(+p); printf(“3-%dn “,*+p); print

8、f(“4-%dn “,*(p-); printf(“5-%dn “,*p-); printf(“6-%dn“,*p+); printf(“7-%dn“,+(*p); printf(“8-%dn“,(*p)+); p= printf(“9-%dn “,*p); printf(“10-%dn“,*(+p); p+; printf(“11-%dn “,*p); 【题目 3】请预测程序的结果,并上机运行程序,验证结果。 #include void main() int a6=1,2,3,4,5,6; int *p,i,s=1; p=a; for(i=0;i void main() char a=“ab

9、cdef“; char *b=“ABCDEF“; int i; for(i=0;i void main() int cle=0; char *p,s101; printf(“请输入一行字符:“); gets(s); p=s; while(*p!=0) if(*p=A) i=*p1; *p1=*p2;*p2=i; void main() int n1,n2; printf(“请输入两个整数:“); scanf(“%d%d“, swap( printf(“%d,%dn“,n1,n2); 【题目 7】程序功能:求两个数中的最大值。 要求:阅读以下程序,将空格处补充完整,并上机调试运行。 #inclu

10、de int * max(int *x,int *y) if(*x*y) return x; else return y; void main() int a,b; printf(“请输入两个整数 a,b:“); scanf(“%d,%d“, printf(“最大值是:%dn“, *max( 【题目 8】将数组 a 中的 10 个整数按相反顺序存放,完善程序。 #include #define N 10 void inv(int *x, int n) /*理解掌握本函数的算法*/ int t,i; for(i=0;i void main() int num10,i,dnum10,di; int

11、 *p; p=num; for(i=0;i int len(char *str) void main() char str1024; gets(str); printf(“%d“,len(str); 【题目 13】编写函数 convert,把字符串中的小写字母转换成大写字母。 要求:在 main 函数中输入字符串,并输出转换后的字符串。分析下面的代码,将省略 号的部分补充完整并上机验证。 #include void convert(char *p) void main() char str100; gets(str); convert(str); puts(str); 三、实验结果(用截图说明)三、实验结果(用截图说明) 四、调试心得(选作)四、调试心得(选作)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号