C语言函数练习题2_第1页
C语言函数练习题2_第2页
C语言函数练习题2_第3页
C语言函数练习题2_第4页
C语言函数练习题2_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

. /*姓名:白银日期:2007.6.11描述:英尺,英寸,米,厘米之间的转换*/#include float GetInch(float feet);float GetMeter(float inch);float GetCentiMeter(float meter);void main()float inch;float meter;float centimeter;float feet;printf(请输入英尺的值n);scanf(%f,&feet);inch=GetInch(feet);printf(转换成英寸的结果是%.2f:,inch);printf(n);meter=GetMeter(GetInch(feet);printf(转换成米的结果是%.2f:,meter);printf(n);centimeter=GetCentiMeter(GetMeter(GetInch(feet);printf(转换成米的结果是%.2f:,centimeter);printf(n);float GetInch(float feet)float inch;inch=feet*12;return inch;float GetMeter(float inch)float meter;meter=inch*2.54;return meter;float GetCentiMeter(float meter)float centimeter;centimeter=meter*100;return centimeter;/*姓名:白银日期:2007.6.11描述:底和高求三角形面积*/#include float GetArea(float h,float l);void main()float area;float h;float l;printf(请输入底和高n);scanf(%f,%f,&l,&h);area=GetArea(h,l);printf(三角形面积=%.2f,area);printf(n);float GetArea(float h,float l)float area;area=h*l/2;return area;/*姓名:白银日期:2007.6.11描述:函数递归求阶乘*/#include int GetFactorial(int number);void main()int number;unsigned long int result;printf(请输入number的值n);scanf(%d,&number);result=GetFactorial(number);printf(结果是%dn,result);int GetFactorial(int number)int result;if(number=1)result=1;elseresult=GetFactorial(number-1)*number;return result;/*姓名:白银日期:2007.6.11描述:画出一个正方形*/#include void Draw(int num);void OutPut1(int num);void OutPut2(int num);void main()int num;printf(请输入正方型的行数n);scanf(%d,&num);Draw(num);printf(n);void OutPut1(int num)int i;for(i=0;inum;i+)printf(*);for(i=0;inum;i+)printf(n);void OutPut2(int num)int i;for(i=0;inum;i+)printf(n);for(i=0;inum;i+)printf(*);void Draw(int num)int i;int j;OutPut1(num);for(i=0;inum;i+)for(j=0;jnum;j+)if(i=0&j=0)|(i=(num-1)&j=0)|(i=(num-1)&j=(num-1)|(i=0&j=(num-1)printf(*);elseprintf( );printf(n);OutPut2(num);/*姓名:白银日期:2007.6.11描述:求出3个数字的立方的和*/#include #include float GetNumber(float a,float b,float c);void main()float a,b,c;float num;printf(请输入3个数字n);scanf(%f%f%f,&a,&b,&c);num=GetNumber(a,b,c);printf(结果=%.2fn,num);float GetNumber(float a,float b,float c)float num;num=(float) (pow(a,3)+pow(b,3)+pow(c,3);return num;/*作者:白银日期:2007.6.11描述:输入一定的钱数,得出最少需要多少张*/#include int GetMoney(int *num,int money);void main()int a7;int *p;int num;p=#printf(请输入钱数n);scanf(%d,p);a0=GetMoney(p,100);a1=GetMoney(p,50);a2=GetMoney(p,20);a3=GetMoney(p,10);a4=GetMoney(p,5);a5=GetMoney(p,2);a6=GetMoney(p,1);printf(需要100元的%d张n,a0);printf(需要50元的%d张n,a1);printf(需要20元的%d张n,a2);printf(需要10元的%d张n,a3);printf(需要5元的%d张n,a4);printf(需要2元的%d张n,a5);printf(需要1元的%d张n,a6);int GetMoney(int *num,int money)int count;count=*num/money;*num=*num%money;return count;/*作者:白银日期:2007,6,11描述:输入一个数转换成16,2,12,7,8进制的数字,并且输出。*/#include void GetSixteen(int num);/转换成16进制void GetTwo(int num);/转换成2进制void GetEight(int num);/转换成8进制void GetTwelve(int num);/转换成12进制void GetSeven(int num);/转换成7进制void Sort(int *a,int i);/反向输出void main()int num;printf(请输入一个数字n);scanf(%d,&num);GetSixteen(num);GetTwo(num);GetEight(num);GetTwelve(num);GetSeven(num);void Sort(int *a,int i)int j;for(j=i-1;j=0;j-)printf(%d ,aj);printf(n);void GetSixteen(int num)int a100;int i=0;int j;printf(转换成16进制为:);while(num!=0)ai=num%16;num=num/16;i+;for(j=i-1;j=0;j-)printf(%x ,aj);printf(n);void GetTwo(int num)int a100;int i=0;printf(转换成2进制为:);while(num!=0)ai=num%2;num=num/2;i+;Sort(a,i);void GetEight(int num)int a100;int i=0;printf(转换成8进制为:);while(num!=0)ai=num%8;num=num/8;i+;Sort(a,i);void GetTwelve(int num)int a100;int i=0;printf(转换成12进制为:);while(num!=0)ai=num%12;num=num/12;i+;Sort(a,i);void GetSeven(int num)int a100;int i=0;printf(转换成7进制为:);while(num!=0)ai=num%7;num=num/7;i+;Sort(a,i);/*姓名:白银时间:2007.6.11描述:输入半径,底和高求出圆的面积,周长和三角形面积*/#include #define PI 3.14float GetRoundArea(float r);float GetRoundPerimeter(float r);float GetTrigonArea(float hight,float length);void main()float r;float hight;float length;float area;float perimeter;printf(请输入半径,高和底边长度n);scanf(%f%f%f,&r,&hight,&length);area=GetRoundArea(r);printf(圆的面积是%fn,area);perimeter=GetRoundPerimeter(r);printf(圆的周长是%fn,perimeter);area=GetTrigonArea(hight,length);printf(三角形的面积是%fn,area);float GetRoundArea(float r)float area;area=PI*r*r;return area;float GetRoundPerimeter(float r)float perimeter;perimeter=2*PI*r;return perimeter;float GetTrigonArea(float hight,float length)float area;area=hight*length/2;return area;/*姓名:白银日期:2007.6.11描述:输入一个字符串,统计小写字母个数*/#include #define N 10000int GetNumber(char *a,int n);void main()char aN;int i;int num;printf(请输入一个字符数组n);for(i=0;iN;i+)scanf(%c,&ai);if(ai=n)break;num=GetNumber(a,i);printf(数组中小写字母的个数是%dn,num);int GetNumber(char *a,int n)int i;int count=0;for(i=0;in;i+)if(ai=Z)count+;return count;/*姓名:白银日期:2007.6.11描述:输出一个由*和A或者a组成的三角形*/#include char Input();int InputNumber();void Output(char c,int num);void main()int c;int num;c=Input();num=InputNumber();Output(c,num);char Input()char c;char ans=y;printf(请输入a,A,或者*n);while(ans=y)fflush(stdin);scanf(%c,&c);if(c=a|c=A|c=*)break;elseprintf(输入错误,重新输入n);return c;int InputNumber()int num;char ans=y;printf(请输入你要的三角型的行数(26)n);while(ans=y)scanf(%d,&num);if(num26)break;elseprintf(输入错误,重新输入n);return num;void Output(char c,int num)int i;int j;for(j=1;j=num;j+)for(i=1;i=num-j;i+)printf( );for(i=1;i=2*j-1;i+)printf(%c,c);printf(n);/*作者:白银日期:2007.6.11描述:取得日期。这个月多少天,输入的日期是否存在,取得下一天的日期*/#include #include int IsRealDays(int year,int month,int day);void GetNextday(int year,int month,int day);int IsLeapyear(int year);int GetDays(int year,int month);void main()int year;int month;int day;int result;int days;printf(请输入yearn);scanf(%d,&year);printf(请输入monthn);scanf(%d,&month);printf(请输入dayn);scanf(%d,&day);IsRealDays(year,month,day);result=IsLeapyear(year);if(result=1)printf(闰年n);elseprintf(不是闰年n);days=GetDays(year,month);printf(这个月有%d天n,days);GetNextday(year,month,day);int IsLeapyear(int year)int result;if(year%4=0&year%100!=0)|year%400=0)return result=1;elsereturn result=0;int GetDays(int year,int month)int days;switch(month)case 1:case 3:case 5:case 7:case 8:case 10:case 12:days=31;break;case 4:case 6:case 9:case 11:days=30;break;case 2:if(IsLeapyear(year)=1)days=29;elsedays=28;break;return days;int IsRealDays(int year,int month,int day)int result;if(month12&month1)|yearGetDays(year,month)|day1)printf(错误的日期n);result=0;elseprintf(正确的日期n);result=1;return result;void GetNextday(int year,int month,int day)if(IsRealDays(year,month,day)=0)printf(错误n);exit(0);if(day=GetDays(year,month)if(month=12)year+;month=1;day=1;elsemonth+;day=1;elseday+;printf(下一天是%d,%d,%d,year,month,day);/*姓名:白银日期:2007.6.11描述:建立一个函数,输入数组元素,主函数调用这个数组,输出这个数组中元素的和*/#include #define N 1000int InPutArray(int *a);void main()int aryN;int num;int i;int sum=0;num=InPutArray(ary);for(i=0;inum;i+)sum=sum+aryi;printf(数组元素的和是%dn,sum);int InPutArray(int *a)int i=0;printf(请输入数组元素(00为退出输入)n);for(i=0;iN;i+)scanf(%d,a+i);if(*(a+i)=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论