c语言完成以下任务封装到一个函数:1while语句实现求1+2+……+100的和。2随意输入一个整数n求1—n之间的奇数和和偶数和。3求1+2+3+4……+100的和4求n的阶乘5编程序统计并输出200以内所有能同时被7和3整除的数及其数量。6定义一个数组a10并赋初值0~9反序输出。7一个小组学生共10人输入他们的成绩计算并输出小组总成绩及平均成绩。8封装一个函数并且在主函数中进行调用函数功能要
1.求1到100的和函数:
int sum_1_to_100() {
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
i++;
}
return sum;
}
2.求奇数和偶数和函数:
void sum_odd_even(int n, int *odd_sum, int *even_sum) {
*odd_sum = 0;
*even_sum = 0;
int i = 1;
while (i <= n) {
if (i % 2 == 0) {
*even_sum += i;
} else {
*odd_sum += i;
}
i++;
}
}
3.求1到100的和函数:
int sum_1_to_100() {
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
i++;
}
return sum;
}
4.求n的阶乘函数:
int factorial(int n) {
int result = 1;
int i = 1;
while (i <= n) {
result *= i;
i++;
}
return result;
}
5.统计能被3和7整除的数及其数量函数:
void count_divisible_by_3_and_7(int *count) {
*count = 0;
int i = 1;
while (i <= 200) {
if (i % 3 == 0 && i % 7 == 0) {
printf("%d\n", i);
(*count)++;
}
i++;
}
}
6.反序输出数组函数:
void reverse_array(int *a, int size) {
int i = 0;
int j = size - 1;
while (i < j) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
i++;
j--;
}
for (i = 0; i < size; i++) {
printf("%d ", a[i]);
}
printf("\n");
}
7.计算小组总成绩和平均成绩函数:
void calculate_total_and_average(int *total, float *average) {
*total = 0;
int i = 1;
while (i <= 10) {
int score;
printf("请输入第%d个学生的成绩:", i);
scanf("%d", &score);
*total += score;
i++;
}
*average = (float)*total / 10;
printf("小组总成绩:%d,平均成绩:%.2f\n", *total, *average);
}
8.求最大值函数:
int max(int a, int b) {
if (a > b) {
return a;
} else {
return b;
}
}
9.厘米转英寸函数:
float cm_to_inch(float cm) {
return cm / 2.54;
}
10.判断是否为素数函数:
bool is_prime(int n) {
if (n <= 1) {
return false;
}
int i = 2;
while (i * i <= n) {
if (n % i == 0) {
return false;
}
i++;
}
return true;
}
11.反向输出字符串函数:
void reverse_string(char *str) {
int len = strlen(str);
int i = 0;
int j = len - 1;
while (i < j) {
char temp = str[i];
str[i] = str[j];
str[j] = temp;
i++;
j--;
}
printf("%s\n", str);
}
12.随机输出5个不重复的数函数:
void random_numbers() {
srand((unsigned)time(NULL));
int nums[100] = {0};
int i = 0;
while (i < 5) {
int num = rand() % 100 + 1;
if (nums[num] == 0) {
nums[num] = 1;
printf("%d ", num);
i++;
}
}
printf("\n");
}
13.暴力破解8位数密码函数:
void crack_password() {
int password = 12345678;
int count = 0;
int i = 0;
while (i <= 99999999) {
if (i == password) {
printf("密码破解成功,密码是:%08d\n", i);
break;
}
i++;
count++;
}
printf("破解次数:%d\n", count);
}
14.冒泡排序函数:
void bubble_sort(int *a, int size) {
int i, j;
for (i = 0; i < size - 1; i++) {
for (j = 0; j < size - i - 1; j++) {
if (a[j] > a[j + 1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (i = 0; i < size; i++) {
printf("%d ", a[i]);
}
printf("\n");
}
``
原文地址: https://www.cveoy.top/t/topic/gHSS 著作权归作者所有。请勿转载和采集!