资源描述:
《实验7函数——参考程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验7函数一一参考程序实验七函数一一参考程序一、程序调试方法实验1.找出并改正以下源程序屮错误,得出正确的运行结果。源程序如下://include<stdio.h>//函数声明intadd(inta,intb);voidmain()inta,b;scanf("%d%dn,&a,&b);printf("a+b=%d",add(a,b));}voidadd(inta,b)//改为intadd(inta,intb){returna+b;}2.找出并改正以下源程序中错误,得出正确的运行结果,其中max函数的功能是得到数组
2、屮最大元素的值。源程序如下:#include<stdio.h>voidmain(){floatdata[N];inti;for(i=0;i<N;i++)scanf("%fn,data[i]);//改为scanf(n%f",&data[i]);printf("maxis=%f,,/max(data[N]/N));//改为printf("maxis=%f,,/max(data,N));}floatmax(floata[],intn){inti/esult;//改为inti;floatresult;//增加result=
3、a[0];for(i=0;i<n;i++){if(a[i]>result)result=a[i];}}returnresult;1.找出并改正以下源程序中错误,得出正确的运行结果,其中converse函数的功能是逆序输出n个字符。解题思路:已知字符串的长度,逆序输出字符串如果只有1个字符,直接输出该字符后结朿否则:输出后面的所有字符之后,再输出该字符源程序如下:#include<stdio.h>voidmain(){inti=5;voidconverse(intn);printf("lnput5characters:
4、");converse(i);printf("n);}voidconverse(n);//改为voidconverse(intn)并去掉分号{charnext;if(n>=l)//改为if(n==1){next=getchar();putchar(next);else{next=getchar();converse(n-l);putchar(next);}}四、编写程序1、编写一个函数,其功能是判断形式参数是否为小写字母,若是,返回其对应的大写字母,否则返回原字符。然后在main函数中输入一个字符,调用该函数得到其大写字母并输出#
5、include<stdio.h>charisLow(charch){if(ch>='a'&&ch<='z')returnch-32;elsereturnch;}voidmain(void)charch;printf("请输入一个字符:");scanf("%c",&ch);printf("%c",isLow(ch));}2、编写函数reversedntnumber),它的功能是将number逆序输出,在main函数中输入一个整数,调用该函数得到逆序的数并输
6、出。例如reverse(11233)的返回值为33211。#include<stdio.h>intreverse(intn){intrev=0,num;do{num=n%10;rev=rev*10+num;n=n/10;}while(n);returnrev;}voidmain(void)intnum,revnum;printf(n请输入一个整数:u);scanfC^d'^&jnum);revnum=reverse(num);printf("逆序后整数为:%dn,revnum);}3、编写函数完成如下功能:将长整型
7、数中数字为偶数的数依次取出,构成一个新数返回,例如,当s中的数为:87653142时,则返回的数为:8642。提示:依次取出长整型数的每一位数字,如果是偶数,则放入新数中。在main函数屮输入一个长整型数,调用该函数得到新的数,并输出结果。//include"stdio.h"longfunc(longs);voidmain(){longa;printf("请输入一个整数:">;scanf(n%ld",&a);printf("%ld",func(a)};}longfunc(longn)longresult=0;intnum,wei
8、ght=l;//weight表示数位的权值(即个、十、百,。。。。)while(n!=0){num=n%10;//得到最低位if(num%2==0){result:num*wei