/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:用函数调用方式,实现字符串的复制。
-------------------------------------------------------*/
#include <stdio.h>
void string_copy(char *str_from, char *str_to)
{
int i=0;
/***********SPACE***********/
for(; (*(【?】)=*(str_from+i))!='\0'; i++) ;
}
int main()
{
static char array_str1[20]="i am a teacher.";
char array_str2[20];
/***********SPACE***********/
【?】(array_str1, array_str2);
/***********SPACE***********/
【?】("array_str2=%s\n",array_str2);
return 0;
}
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:求1到10的阶乘的和。
------------------------------------------------------*/
#include <stdio.h>
main()
{
int i;
float s=0;
float fac(int n);
/**********FOUND**********/
for(i=1;i<10;i++)
/**********FOUND**********/
s=fac(i);
printf("%f\n",s);
}
float fac(int n)
{
/**********FOUND**********/
int y=1;
int i;
for(i=1 ;i<=n;i++)
y=y*i;
/**********FOUND**********/
return;
ç¨åºå¡«åï¼
#include <stdio.h>
void string_copy(char *str_from, char *str_to)
{
int i=0;
for(; (*(str_to+i)=*(str_from+i))!='\0'; i++) ;
}
int main()
{
static char array_str1[20]="i am a teacher.";
char array_str2[20];
string_copy(array_str1, array_str2);
printf("array_str2=%s\n",array_str2);
return 0;
}
ç¨åºæ¹éï¼
#include <stdio.h>
main()
{
int i;
float s=0;
float fac(int n);
for(i=1;i<=10;i++)
s+=fac(i);
printf("%f\n",s);
}
float fac(int n)
{
float y=1f;
int i;
for(i=1;i<=n;i++)
y=y*i;
return y;
}
追é®æä¹æè¿è¡ 没æåºç»æ
array_str2=i am a teacher.
Press any key to continue
#include <stdio.h>
void string_copy(char *str_from, char *str_to)
{
int i=0;
/***********SPACE***********/
for(; (*(str_to+i)=*(str_from+i))!='\0'; i++) ;
}
int main()
{
static char array_str1[20]="i am a teacher.";
char array_str2[20];
/***********SPACE***********/
string_copy(array_str1, array_str2);
/***********SPACE***********/
printf("array_str2=%s\n",array_str2);
return 0;
}
第二题
4037913.000000
Press any key to continue
#include <stdio.h>
main()
{
int i;
float s=0;
float fac(int n);
/**********FOUND**********/
for(i=1;i<=10;i++)
/**********FOUND**********/
s+=fac(i);
printf("%f\n",s);
}
float fac(int n)
{
/**********FOUND**********/
float y=1;
int i;
for(i=1 ;i<=n;i++)
y=y*i;
/**********FOUND**********/
return y;
}
void string_copy(char *str_from, char *str_to)
{
int i=0;
/***********SPACE***********/
for(; (*(str_to+i)=*(str_from+i))!='\0'; i++) ;
}
int main()
{
static char array_str1[20]="i am a teacher.";
char array_str2[20];
/***********SPACE***********/
string_copy(array_str1, array_str2);
/***********SPACE***********/
printf("array_str2=%s\n",array_str2);
return 0;
}
#include <stdio.h>
main()
{
int i;
float s=0;
float fac(int n);
/**********FOUND**********/
for(i=1; i<10; i++)
/**********FOUND**********/
{
s=fac(i);
printf("%f\n",s);
}
}
float fac(int n)
{
/**********FOUND**********/
int y=1;
int i;
for(i=1 ; i<=n; i++)
y=y*i;
/**********FOUND**********/
return (float)y;
}
1 #include<stdio.h>
2
3 void string_copy(char *str_from,char *str_to)
4 {
5 int i=0;
6 for(;(*(str_to+i)=*(str_from+i)) !='\0';i++);
7 }
8
9 int main()
10 {
11 static char array_str1[20] ="i am a teacher.";
12 char array_str2[20];
13 string_copy(array_str1,array_str2);
14 printf("array_str2 = %s\n",array_str2);
15 return 0;
16 }
~
第二题
#include <stdio.h>
float fac(int n); //要调用的函数写在main前面函数
main()
{
int i;
float s=0;
/**********FOUND**********/
for(i=1;i<=10;i++) //应该把10也算上
/**********FOUND**********/
s=fac(i);
printf("%f\n",s);
}
float fac(int n)
{
/**********FOUND**********/
int y=1;
int i;
for(i=1 ;i<=n;i++)
y=y*i;
/**********FOUND**********/
return y; 应该返回值
} //少了括号
#include <stdio.h>
void main()
{
int i;
float s=0;
float fac(int n); //每个数的阶乘
for(i=1;i<11;i++)
{
s+=fac(i); // 每次返回的值累加
}
printf("%f\n",s);
}
float fac(int n)
{
float y=1;
int i;
for(i=1;i<=n;i++)
{
y=y*i;
}
return y;
}
改错:(1)for(i=1;i<=10;i++) (2) s+=fac(i) (3)float y = 1; (4)return y;