重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
有疑问问#include #include #include double EPS=10E-6; double sum(double a,double b) { return a+b; } double sub(double a,double b) { return a-b; } double mul(double a,double b) { return a*b; } double divv(double a,double b) { return a/b; } int rem(int a , int b) { return a%b; } int addnumber(int c,int d) { int sum=0; for(int i=c;i=d;i++) { sum+=i; } return sum; } int factor(int n) { int f=1; for(int i=1;i=n;i++) { f*=i; } return f; } void displaymenu() { printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \n"); printf("*############高级计算器############* \n"); printf("************************************ \n"); printf("* ①加法运算 * \n"); printf("* ②减法运算 * \n"); printf("* ③乘法运算 * \n"); printf("* ④除法运算 * \n"); printf("* ⑤取余运算 * \n"); printf("* ⑥累加运算 * \n"); printf("* ⑦阶乘运算 * \n"); printf("* ⊙结束运算 * \n"); printf("************************************ \n"); printf("************************************ \n"); } void main() { int c,d; /*用于做四则运算的两个数值的说明*/ double a,b; /*用来做累加函数的两个参数值的说明*/ int intresult; double result; /*用于保存表单运算中函数的返回值*/ int choice; displaymenu();/*保存用户选择项目菜单项*/ while(1) { printf("请选择你所进行运算项目的符号:"); scanf("%d",choice); switch(choice) { case 1: /*加法计算*/ printf("请输入两个数字:"); scanf("%lf%lf",a,b); result=sum(a,b); printf("%lf+%lf的计算结果是:%lf\n",a,b,result); break; case 2: /*减法计算*/ printf("请输入两个数字:"); scanf("%lf%lf",a,b); result=sub(a,b); printf("%lf-%lf的计算结果是:%lf\n",a,b,result); break; case 3: /*乘法计算*/ printf("请输入两个数字:"); scanf("%lf%lf",a,b); result=mul(a,b); printf("%lf*%lf的计算结果是:%lf\n",a,b,result); break; case 4: /*除法计算*/ { scanf("%lf%lf",a,b); if(b-0.0EPS) printf("数字错误\n"); else { printf("请输入两个数字:"); result=divv(a,b); printf("%lf/%lf的计算结果是:%lf\n",a,b,result); } break; } case 5: /*取余计算*/ printf("请输入两个数字:"); scanf("%d%d",c,d); result=rem(c,d); printf("%d % %d的计算结果是:%d\n",c,d,result); break; case 6: /*累加计算*/ printf("请输入两个整数"); scanf("%d%d",c,d); intresult=addnumber(c,d); printf("%d-%d的累加计算结果是:%d\n",c,d,intresult); break; case 7: //阶乘计算 { printf("请输入一个大于0小于10的整数字"); scanf("%d",c); if(c10) { printf("请输入一个大于0小于10的整数字,数据错误。\n"); break; } intresult=factor(c); printf("%d的阶乘计算结果是:%d\n",c,intresult); break; } case 0: printf("谢谢使用。欢迎下次再用。\n"); return ; default: printf("选择错误,程序结束\n"); break; } } }
创新互联建站专注于西湖企业网站建设,响应式网站,商城网站开发。西湖网站建设公司,为西湖等地区提供建站服务。全流程按需定制设计,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
1 根据功能,想一个函数名,并设计好返回值类型以及参数列表。参数列表包括参数个数,每个参数类型,以及该参数的作用。
2 根据函数要实现的功能,实现函数的主体代码。
3 按照你设计的想法,传入不同参数类型,验证函数功能并调试。
代码:
#include stdio.h
请用自定义函数的形式编程实现
求 s = m! + n! + k!,m、n、k 从键盘输入(值均小 于 7)。
int fun(int m);
int main()
{
int m,n,k;
int s;
printf("请输入三个小于7的数:");
scanf("%d %d %d",m,n,k);
s=fun(m)+fun(n)+fun(k);
printf("%d\n",s);
return 0;
}
int fun(int m)
{
int i;
int x=1;
for(i=1;i=m;i++)
{
x=x*i;
}
return x;
}
扩展资料:
printf函数使用注意事项
1、域宽
%d:按整型数据的实际长度输出。
如果想输出指定宽度可以指定域宽,%md--gt;m域宽,打印出来以后,在控制台上,显示m位;
如果我们要打印的数的位数如果超过我们设定m则原样输出;
如果我们要打印的数的位数如果小于我们设定的位数,则补空白,具体如下:
如果m为正数,则左对齐(左侧补空白);
如果m为负数,则右对齐(右侧补空白)。
2、转义字符
如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。
如:printf("%f%%",1.0/3);输出结果:0.333333%。
cheng()函数中,n赋值1之后再也没有改变过,所以x=x*n,不管乘几次,结果还是x。
暂没发现其他错误。
(1)素数判断函数:是返回1,否则返回0
int prime(int n){
int i;
if(n2 !(n1) || n2)
return 0;
for(i=3;i*i=n;i+=2)
if(!(n%i))
return 0;
return 1;
}
(2)编写排序函数(冒泡排序、选择排序)
void bubbling(int *p,int n){//冒泡
int i,j,k;
for(i=0;in;i++)
for(j=1;jn;j++)
if(p[j]p[j-1])
k=p[j],p[j]=p[j-1],p[j-1]=k;
}
void select(int *p,int n){//选择
int i,j,k;
for(n--,i=0;in;i++){
for(k=i,j=k+1;j=n;j++)
if(p[k]p[j])
k=j;
if(k-i)
j=p[k],p[k]=p[i],p[i]=j;
}
}
(3)查找函数,找到返回下标,否则返回-1
int find(int *p,int n,int x){//顺序
int i;
for(i=0;in;i++)
if(p[i]==x)
return i;
return -1;
}
int fihalf(int *p,int n,int x){//折半,升序为例
int l,r,m;
l=0,r=n-1;
while(m=(l+r)1,lr p[m]-x)
p[m]x ? l=m+1 : r=m-1;
return p[m]==x ? m : -1;
}
(4)插入函数,升序为例