目录
1.对于一个大于等于三的数判断它是否为素数
int main() {
int num;
scanf("%d", &num);
if (num == 2) {
printf("2是素数");
return 0;//结束主程序
}
bool flag = false;
for (int i = 2; i < num; i++) {
if (num % i == 0) {
printf("%d不是素数\n", num);
flag = true;
break;
}
}
if (flag == false) {
printf("%d是素数", num);
}
}
第二种写法(函数封装)
int prime(int n) {
int res = 0;
for (int i = 2; i < n; i++) {
if (n % i == 0) {
res = 1;
break;
}
}
return res;
}
int main() {
int n;
scanf("%d", &n);
int res = prime(n);
if (res == 1) {
printf("%d不是素数", n);
}
else {
printf("%d是素数", n);
}
}
2.输入英文字母判断星期几
int main() {
char week;
char i, j;
printf("请输入星期的首字母:");
scanf("%c", &week);
getchar();//吸收换行字符
switch (week) {
case'M':
case'm'://未遇到break则继续执行
printf("今天是星期一");
break;
case'T':
case't':
printf("请输入第二个字母:");
scanf("%c", &i);
if (i == 'u' || i == 'U') {
printf("今天是星期二");
}
if (i == 'h' || i == 'H') {
printf("今天是星期四");
}
break;
case'W':
case'w':
printf("今天是星期三");
break;
case'F':
case'f':
printf("今天是星期五");
break;
case'S':
case's':
printf("请输入第二个字母:");
scanf("%c", &j);
if (j == 'u' || j == 'U') {
printf("今天是星期天");
}
if (j == 'a' || j == 'A') {
printf("今天是星期六");
}
break;
default:
printf("输入有误");
break;
}
return 0;
}
3.随机正整数求阶乘
double GetAverage(int n) {
srand((unsigned int)time(NULL));
//所有评委总和-max-min /3
int num, sum = 0, min = 10, max = 0;
for (int i = 0; i < n; i++) {
int num = rand() % 11;
sum += num;
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
//三目和 max = num>max?num:max; min = num<min?num:max;
}
return (double)(sum - max - min) / (sum - 2);
}
int main() {
double score = GetAverage(5);
printf("%lf", score);
return 0;
}
4.水仙花数
bool IsFlower(int num) {
int sum = 0, tmp = num;
while (tmp != 0) {
sum += (int)pow(num % 10, 3);
sum /= 10;
}
return num == sum;
//等价于
//if (num == sum) {
// return true;
//}
//else {
// return false;
//}
}
int main() {
for (int i = 153; i < 1000; i++) {
bool res = IsFlower(i);
if (res == true) {
printf("%d是水仙花数\n", i);
}
}
return 0;
}
5.完数
bool Perfect(int num) {
int sum = 0;
for (int i = 1; i < num; i++) {
if (num % i == 0) {
sum += i;
}
}
return num == sum;
}
int main() {//函数封装
//bool res = Perfect(6);
// if (res == true) {
// printf("%d是完数\n", 6);
// }
if (Perfect(6)) {
printf("%d是完数\n", 6);
}
return 0;