问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用函数指针实现两个整数的加、减、乘、除四种运算,主函数中分别用字符‘A’‘S’‘M’‘D’表示四种运算;

发布网友 发布时间:2022-05-02 03:46

我来回答

2个回答

热心网友 时间:2023-10-09 09:00

#include<stdio.h>

int main()
{
char a;
char *p = &a;
float num1;
float num2;
printf("please input you want to results\n");
scanf("%f%c%f",&num1,p,&num2);
switch(*p)
{
case 'A': printf("num1 + num2 = %6.2f", num1 + num2);
break;
case 'S': printf("num1 - num2 = %6.2f", num1 - num2);
break;
case 'M': printf("num1 * num2 = %6.2f", num1 * num2);
break;
case 'D': printf("num1 / num2 = %6.2f", num1 / num2);
break;
default: printf("error");
}
return 0;
}

热心网友 时间:2023-10-09 09:00

#include <stdio.h>

int A(int *a, int *b)
{
return *a + *b;
}

int S(int *a, int *b)
{
return *a - *b;
}

int M(int *a, int *b)
{
return *a * *b;
}

float D(int *a, int *b)
{
if (*b == 0)
{
printf("b的值不能为0!\n");
return 0;
}
return ((float)*a / *b);
}

int main()
{
int a, b;
printf("Please input a,b:");
scanf("%d%d",&a, &b);
printf("a + b = %d\n", A(&a, &b));
printf("a - b = %d\n", S(&a, &b));
printf("a * b = %d\n", M(&a, &b));
printf("a / b = %f\n", D(&a, &b));
return 0;
}追问如果我不想它们都输出来呢??

追答#include

int A(int a, int b)
{
return a + b;
}

int S(int a, int b)
{
return a - b;
}

int M(int a, int b)
{
return a * b;
}

int D(int a, int b)
{
return a / b;
}

void process(int a, int b, int (*fun)(int, int))
{
printf("%d\n",(*fun)(a, b));
}

int main()
{
int a, b;
printf("Please input a,b:");
scanf("%d%d",&a, &b);
printf("add:\n");
process(a, b, A);
printf("substract:\n");
process(a, b, S);
printf("multiplication:\n");
process(a, b, M);
printf("division:\n");
process(a, b, D);
return 0;
}

c语言中编写程序,输入2个数,定义四个函数,分别实现加减乘除四则运算...

1、定义一个基础函数,例如`double calculate(double x, double y, char operation)`,它接受两个数`x`和`y`以及一个操作符`operation`作为参数。这个函数将是实现四则运算的核心。2、在`calculate`函数内部,我们创建一个`double`类型的变量`result`来存储运算结果。对于加法,可以这样调用函数:`res...

...的程序(c=a运算符b),只做加、减、乘、除四种运算。(用switch结构...

{"+", add}, // 使用函数指针 {"-", minus&lt;int&gt;()}, // 使用标准库函数对象 {"*", [](int i, int j) {return i * j; }}, // 使用未命名的lambda表达式 {"/", divide()}, // 使用函数调用运算符 {"%", mod} // 命名了的lambda表达式 }; int main() { int num1, num2; stri...

编写一个函数,用指针作为参数,分别得到双精度实型数据的整数部分和小...

void main(){ float x,a;int b;printf("请输入浮点数:\n");scanf("%f",&amp;x);f(x,&amp;a,&amp;b);printf("整数部分是:%d小数部分是:%f",b,a);} 实型变量分为两类:单精度型和双精度型 其类型说明符为float 单精度说明符,double 双精度说明符。在Turbo C中单精度型占4个字节(32位)...

用C语言做个简单的计算器 要有加减乘除 先乘后加 先算括号里的

int div(int x,int y);int getach(); //用于获取一个合法字符 int getid(); //对合法字符进行判断处理 int cal(); //计算表达式的值 int num,curch;int (*func[])(int x,int y)={add,sub,mul,div}; //函数指针数组,数组元素分别指向+-*/运算函数 char chtbl[]="+-*...

急。。请问一下,指向函数的指针有什么特殊的作用吗?为什么要有指向函数...

指针可以加上或减去一个整数。指针的这种运算的意义和通常的数值的加减运算的意义是不一样的。例如: 例二: 1、chara[20]; 2、int*ptr=a; ... ... 3、ptr++; 在上例中,指针ptr的类型是int*,它指向的类型是int,它被初始化为指向整形变量a。接下来的第3句中,指针ptr被加了1,编译器是这样处理的:它...

...计算器计算器包括加,减,乘,除四种运算。用户通过鼠标进

如果只做四个简单的运算这应应该可以 shell脚本代码如下:!/bin/bash read -p "input num1:" a read -p "input num2:" b read -p "input operator:" o case $o in +) let "res=a + b"echo $res;;-) let "res=a - b"echo $res;;/) awk 'BEGIN{printf "%.2f\n",'$a'...

...的程序(c=a运算符b),只做加、减、乘、除四种运算。(用switch结构...

include&lt;stdio.h&gt;int main(){ int a,c; char b; float result; scanf("%d %c %d",&amp;a,&amp;b,&amp;c); //输入需要分开,如:1 + 2 switch(b) { case '+': result=a+c; break; case '-': result=a-c; break; case '*': result=a*c...

编写函数 printArray,使用指针实现打印一维整型数组中所有元素的操作...

include&lt;stdio.h&gt; void printArray(int *array,int number){ int i;for ( i=0;i&lt;number;i++ ) { printf("%d\t",array[i]); if ( i%5==4 ) printf("\n"); } printf("\n");} void main(){ int a[18],i;for ( i=0;i&lt;18;i++ ) a[i]=i+1;printArray(a,18);} ...

C语言,利用指针编写程序:删除一个字符串中的某一个字符

1、其实头函数每个都需要用到的就是#include &lt;stdio.h&gt;,因为程序里面涉及到了输出和输入字符串以及字符。#include &lt;string.h&gt;。2、其次就是要定义两个相同容量的字符串储存的变量 char a[100]; char b[100];。以及整数变量 int c; int i=0,j=0; 其中a[100]是存字符串的,b【100】是...

比如,在一个加减乘除的程序中,输入两个数值,要求能同时求出这两个值...

加、减、乘、除四种运算统称四则运算。加法的意义:把两个(或几个)数合并成一个数的运算叫做加法。减法的意义:已知两个加数的和与其中的一个加数求另一个加数的运算叫做减法。减法中,已知的两个加数的和叫做被减数,其中一个加数叫做减数,求出的另一个加数叫差。乘法的意义:一个数乘以整数,...

指针与整数的加减运算 指针变量加减一个整数 空字符指针如何指向整数 返回函数指针的函数 指向整数型的指针 用指针方法处理输入10个整数 指针加减运算 指针可以和整数相加吗 10个整数 排序 指针作为形参
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
微信客服电话人工服务24小时热线多少? 衣服袖子小片给火烧了几个洞是否可以修理 我过年才买的新衣服,由于刚刚烤火不慎,它就在袖子的地方被我烧烂... 什么是京东慧采平台 京东慧采和京东自营的区别,京东慧采怎么开店? 1分钟快速了解京东慧采(京东企业购) C语言丨const关键字的用法详解 OPPO手机怎样将视频变成音频,并且从相册文件复制到音乐文件再设置铃声... OPPO手机视频转换格式 华为手机怎么定位另一个手机的位置对方知道吗 工伤事故评不上级怎么赔偿 用u盘装系统后存储在u盘上的文件没了 评不上级的工伤应怎样赔偿 工伤如果评不上级 应该怎么赔偿? 评不上级的工伤怎么赔 工伤没评上级工资赔偿几个月 工伤评不上级,有没有赔偿 工伤没评上级有工伤赔偿吗 评不上级的工伤如何赔 评不上级的工伤应怎样赔偿? 如果工伤评不上级应该怎么赔偿 工伤评不上级怎么赔偿 请推荐国外3D打印机品牌及参数 3D打印机规格有哪些 一个摄像孔荣耀是什么手机? 我的车不可以链接手机蓝牙,还是那种放cd的可以换一个有显示倒车影响的那个东西嘛,大概多少钱 大众速腾三年内换车载蓝牙要钱吗? 在杭州市对标致307加装导航(带DVD、倒车视频、车载蓝牙),需要多少钱(4S店问了一下,他们要7000元) 奔驰车换蓝牙模块需要多少钱? 装车载蓝牙系统大概多少钱? 工伤评不上级可以要求赔偿吗 工伤骨折没评上级,又怎么赔偿? 通过函数指针调用实现对两个数的加减乘除运算(vc++6.0),why最后结果总是0,该怎么改啊 用u盘装系统后u盘里面的东西都不见了 只有些系统文件 这种情况文件能恢复 工伤如果评不上级 应该怎么赔偿 我用u盘做系统 之前u盘里的文件却看不见了 c语言:程序填空 利用指向函数的指针实现函数调用,完成可选择的加减乘除运算 劳动法规定工伤鉴定结果没有评上级怎样赔偿? 编写一个程序在该程序中有一个func()函数该函数可以根据传递 给它的函数指针来实现两个数的加减乘除运算? 用U盘装系统,原U盘文件都没有了,怎么办&#xF62D;&#xF62D; 用大白菜U盘安装系统后存储在U盘上的文件没了 工伤凭不上级,是否有赔偿? C++实现包含加减乘除四个函数的函数指针数组 我受了工伤评级评不上级怎么赔偿 C语言用指针编写的四则运算 用u盘装系统时存储在u盘上的文件没了 劳动法规定工伤鉴定结果没有评上级怎样赔偿 为什么小弟我这没有SocketServer模块 用U盘装系统不小心把系统装U盘里面了还把u盘里面的文件装没了 指针函数:对2个数进行加减乘除,结果怎么不对啊!