1、编写一个程序实现如下功能,要求调用函数实现。 1)从键盘上输入10个整数存入一数组中,将它们按照从
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1、编写一个程序实现如下功能,要求调用函数实现。 1)从键盘上输入10个整数存入一数组中,将它们按照从相关的知识,希望对你有一定的参考价值。
1、编写一个程序实现如下功能,要求调用函数实现。
1)从键盘上输入10个整数存入一数组中,将它们按照从小到大的顺序排列起来,输出排列后的数组值;
2)输入一个数x,查找该数是数组中的第几个元素的值。若不在,则将x插入到相应位置,插入后数组仍有序。
void Sequence(int str[],int N)
int i,j,s;
for(i=0;i<N;i++)
for(j=i+1;j<N;j++)
if(str[i]>str[j])
s=str[i];
str[i]=str[j];
str[j]=s;
else continue;
printf("排序后的数据顺序为:\n");
for(i=0;i<N;i++)
printf("%d ",str[i]);
printf("\n");
void Search(int str[],int x)
int i,j=11;
for(i=0;i<10;i++)
if(x==str[i])
printf("要查找的元素在数组中的第%d位。\n",i+1);
j=i;
break;
if(j==11)
printf("数组中没有%d,将%d插入数组重新排序。\n",x,x);
str[10]=x;
Sequence(str,11);
int main()
int str[11];
int i,x;
printf("输入10个整数:\n");
for(i=0;i<10;i++)
scanf("%d",&str[i]);
Sequence(str,10);
printf("输入要查找的数据x:\n");
scanf("%d",&x);
Search(str,x);
return 0;
我在编译器上运行了,可以达到你要求的效果。哪里不懂的话再问我。
C语言:编写一个函数,在数函数中调用它时,每次实现不同的功能
编写一个函数,在数函数中调用它时,每次实现不同的功能,第一次调用求两个数之和,第二次调用求两个数之差,第三次调用求两个数之积。
要求
(1) 在主函数中输入2个数a,b,并输出a,b的和、差、积。
(2) 分别编写函数add(),sub(),mul()计算两个数的和、差、积。
(3) 用指向函数的指针作为参数,编写函数process(),实现对add(),sub(),mul()的调用
int add(int a, int b)
return a+b;
int sub(int a, int b)
return a-b;
int mul(int a,int b)
return a*b;
int process(int (*fun)(int,int), int a, int b)
return fun(a,b);
int main()
int a,b,r;
printf("输入a、b两数:\\n");
scanf("%d%d",&a,&b);
printf("两数之和:%d\\n", process(add,a,b));
printf("两数之差:%d\\n", process(sub,a,b));
printf("两数之积:%d\\n", process(mul,a,b));
追问
对了
参考技术A 思路:函数指针数组可以实现这个,ptr++跳到下一个函数去执行了。你自己去实现下试试,不行再来问问 参考技术B #include<stdio.h>int add(int m,int n)
return m+n;
int sub(int m,int n)
return m-n;
int mul(int m,int n)
return m*n;
int process(int(*p)(int ,int),int m,int n)
return p(m,n);
main()
int m,n;
scanf("%d%d",&m,&n);
printf("%d\n",process(add,m,n));
printf("%d\n",process(sub,m,n));
printf("%d\n",process(mul,m,n));
return 0;
希望能帮到你,哪里不清楚再问。
我的运行没错,复制到记事本中先,望采纳! 参考技术C 第三条啊。。。干嘛非要用指针啊啊啊啊啊啊啊
以上是关于1、编写一个程序实现如下功能,要求调用函数实现。 1)从键盘上输入10个整数存入一数组中,将它们按照从的主要内容,如果未能解决你的问题,请参考以下文章