#include void main(){
//一:p105,五.
//1.请使用递归的方式实现1-10的和
int i = recursion(10);
printf("1-10的自然数之和为%d \n", i);
//2.两个数的求和操作.
int a = 3, b = 5;
int j = addition(a, b);
printf("%d 和 %d之和为 %d \n",a,b, j);
//二:编写函数求x的n次方;并分别求出:6的5次方、7的4次方、4的8次方、8的3次方、9的5次方。(迭代)
printf("\n");
//三:编写递归函数求x的n次方;并分别求出:6的5次方、7的4次方、4的8次方、8的3次方、9的5次方。
//四:修改猜数游戏,利用函数完成对用户输入数的判断(和反馈)。
int random, min = 0, max = 100; //产生1个0到100之间的随机整数,可以等于0或等于100
srand((unsigned)time(NULL)); //设置随机数种子,保证每一次产生不同的随机数序列
random = (rand() % (max - min + 1)) + min; //产生[min,max]的随机整数,结果值含min和max
games(random);
//五:修改P75例3-16,利用函数判断某个数是否素数。
int num = 65;
primeNumber(num);
}
void primeNumber(int num){
int i=0;
for (i = 2; i < num; i++){
if ( num%i == 0){
printf("%d这个数不是素数.",num);
break;
}
}
if (i == num - 1){
printf("%d这个数是素数",num);
}
}
void games(int random){
int input;
for (int i = 0; i<5; i++){
printf("随机产生一个0~100之间的整数,你猜猜是几?");
scanf_s("%d", &input);
if (input > random){
printf("偏大了");
printf("\n");
}
else if (input < random){
printf("偏小了");
printf("\n");
}
else{
printf("恭喜你猜对了!");
printf("\n");
}
}
if (input != random){
printf("数字是%d,下次在努力吧", random);
}
}
int recursionMultiply(int n, int m){
if (m == 1){
return n;
}
return n*recursionMultiply(n, m - 1);
}
int power(int n, int m){
int result=1;
for (int i = 0; i < m; i++){
result = n*result;
}
return result;
}
int addition(int a, int b){
return a + b;
}
int recursion(int i){
if (i == 1){
return 1;
}
return i + recursion(i - 1);
}
报错:重定义 不同的基类型.请问改如何修改?
games(random);
primeNumber(num);
这两个方法报的错.