上机任务十三答案
实验内容:
1.打开程序mod13_1.c,程序填空。程序要求:fac函数通过指针返回n!,主函数定义指针,调用fac函数,打印结果。
#include
void fac(float *f,int n)
{ int i;
float y=1;
for(i=1;i<=n;i++)
y=y*i;
*f=y;
}
void main( )
{ int m;
float k;
printf("input m:");
scanf("%d",&m);
fac(&k,m);
printf("result=%f",k);
}
2.打开程序mod13_2.c,编写一个函数实现将一个字符串s1中的数字字符复制到另一字符串s2中,函数定义void nc (char *s1, char *s2)。
#include
#include
void nc(char *s1,char *s2)
{int i,j=0;
for(i=0;s1[i]!='\0';i++) 或者 for(i=0;i
if(s1[i]>='0'&&s1[i]<='9')
{s2[j]=s1[i];j++;}
s2[j]='\0';
}
void main()
{char str[80],c[80];
printf("input string:");
gets(str);
nc(str,c);
printf("the digit string is: %s\n",c);
}
或者 nc函数也可以用指针实现: