C语言,函数指针程序设计,帮忙编写几道题

C语言,函数指针程序设计,帮忙编写几道题,第1张

#include <stdioh>

#include <conioh>

#define ARR_LEN 50 /数组长度上限/

/ 比较字符串长度 /

int myStrcmp (char des[], char src[]) {

int i=0, j=0, k=0;

int desLen=0, srcLen=0;

/求对比数组长度/

while (des[i++])

desLen++;

while (src[j++])

srcLen++;

return (desLen-srcLen);

}

int main (void) {

char str1[ARR_LEN];

char str2[ARR_LEN];

gets (str1);

gets (str2);

printf ("%d\n", myStrcmp (str2,str1));

getch (); /屏幕暂留/

return 0;

}

函数fun中的sum定义为静态局部变量,执行完fun(a,5)后,内存并不释放,仍然保留最后的数。

先执行fun(a,5),得到sum=1+2+3+4+5=15

再执行fun(b,4),注意,这个时候是从sum值为15开始计算,因此是15+6+7+8+9=45

因此s=15+45=60

选C

#include <stdioh>int number(int x, int w) { //返回整数number的从右往左数的第W位的数,如果x不满足w位,则返回-1。

if(x < 0) x = -x;

while(--w > 0) {

x /= 10;

if(x == 0) return (-1);

}

return x % 10;

}int main() {

int num,w,n;

printf("请输入一个整数 : ");

scanf("%d",&num);

printf("要显示右数第几位 : ");

scanf("%d",&w);

n = number(num, w);

if(n >= 0) printf("%d的第%d位是 : %d\n\n",num,w,n);

else printf("该数不满足%d位。\n\n",w);

return 0;

}

#include<stdioh>

#include<mathh>

void f(int x)

{

int j=0,i;

double k;

k=sqrt(x);

for(i=2;i<k;i++)

{

if(x%i==0)

j++;

}

if(j==0)

printf("%4d",x);

}

int g(int x)

{

int a,b,c;

a=x/100;

b=x%100/10;

c=x%10;

if(aaa+bbb+ccc==x)

return 1;

else

return 0;

}

void main()

{

int array[100],i,n=300;

for(i=0;i<99;i++,n++)

array[i]=n;

for(i=0;i<99;i++,n++)

printf("%4d,",array[i]);

printf("素数为:");

for(i=0;i<99;i++,n++)

f(array[i]);

printf("水仙花数为:");

for(i=0;i<99;i++,n++)

if(g(array[i])==1)

printf("%4d,",array[i]);

}

要填补的一个函数的内容如下:

double fun(double x , int n)

{int i;

double t=1,y=1;

for(i=1;i<=n;i++)

{t=x/i;

 y+=t;

 }

return y;

}

#include<stdioh>

int main()

{

int x,y;

scanf("%d",&x);

if(x<1)

y=x;

if(x>=1&&x<10)

y=2x-1;

if(x>=10)

y=3x-11;

printf("%d",y);

}

#include <stdioh>

void main()

{ int Ack(int m,int n);

int m,n;

printf("\nEnter m and n:\n");

scanf("%d,%d",&m,&n);

printf("Ack(%d,%d)=%d\n",m,n,Ack(m,n));

}

int Ack(int m,int n)

{ if(m==0)

return(n+1);

else if(n==0)

return(Ack(m-1,1));

else

return(Ack((m-1),Ack(m,n-1)));

}

用简单的C的递归就可以实现了 ,由于电脑问题,结果上传不了,不过可以运行

以上就是关于C语言,函数指针程序设计,帮忙编写几道题全部的内容,包括:C语言,函数指针程序设计,帮忙编写几道题、C语言程序设计函数、C语言程序设计 编写函数number等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9391375.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存