一个数如果恰好等于它的所有因子(不包括它本身)之和,这个数就称为“完数”。编写程序按如下要求统计自然数1—100间完数的个数:
//判断完数  
#include <stdio.h>  
//完数判断函数  
int isPerfect(int n) {  int sum = 0;  for (int i = 1; i < n; i++) {  if(n % i == 0) {  sum += i;  }  }  if(sum == n) {  return 1;  }  else {  return 0;  }  
}  
int main() {  int mid = 0;    //假设不是完数  //判断100以内的完数  printf("1-100以内的完数有:\n");  for (int i = 1; i <= 100; i++) {  mid = isPerfect(i);     //调用函数判断完数  if(mid) {   //如果为真,则输出该数字  printf("%d ",i);  }  }  return 0;  
}
冒泡法是一种常用的对多个无序整数进行排序的方法,编写程序按如下要求实现对多个整数进行排序:
//冒泡排序  
#include <stdio.h>  
//冒泡排序函数  
void bubbleSort(int a[], int n) {  for (int i = 0; i < n; i++) {  for (int j = 0; j < n - i - 1; j++) {  if (a[j] > a[j+1]) {  int temp = a[j];  a[j] = a[j+1];  a[j+1] = temp;  }  }  }  
}  
int main() {  int a[10];  printf("请输入要排序的元素:\n");  for (int i = 0; i < 10; i++) {  scanf("%d",&a[i]);  }  //调用排序函数  bubbleSort(a,10);  //输出排序后的元素  printf("排序后的元素为:\n");  for (int i = 0; i < 10; i++) {  printf("%d ",a[i]);  }  return 0;  
}
选择法是一种常用的对多个无序整数进行排序的方法,编写程序按如下要求实现对多个整数进行排序:
//选择排序  
#include <stdio.h>  
//选择排序函数  
void selectSort(int a[], int n) {  int mid = 0;    //记录数组下标  for (int i = 0; i < n - 1; i++) {  mid = i;    //记录下标  for (int j = i + 1; j < n; j++) {  if(a[mid] > a[j]) {  mid = j;  }  }  if(mid != i) {  int temp = a[mid];  a[mid] = a[i];  a[i] = temp;  }  }  
}  
int main() {  int a[10];  printf("请输入要排序的元素:\n");  for (int i = 0; i < 10; i++) {  scanf("%d",&a[i]);  }  //调用排序函数  selectSort(a,10);  //输出排序后的元素  printf("排序后的元素为:\n");  for (int i = 0; i < 10; i++) {  printf("%d ",a[i]);  }  return 0;  
}