一、利用数组求斐波那契数列
利用数组求fibonacci数列
#include <stdio.h>
#include <stdlib.h>
static void fibonacci(void) {
int i;
int fib[10] = {1, 1};
for (i = 2; i < 10; i++) {
fib[i] = fib[i-1] + fib[i-2];
}
for (i = 0; i < 10; i++) {
printf("%d ", fib[i]);
}
printf("\n");
//return ;
}
int main() {
printf("start coding..\n");
fibonacci();
exit(0);
}
二、冒泡排序
基本排序实现
#include <stdio.h>
#include <stdlib.h>
#define M 10
int main() {
printf("start coding..\n");
int i = 0, j, temp;
//int arr[M] = { 5, 2, 6, 8, 3, 1, 8, 9, 0, 3 };
int arr[M] = { 0 };
printf("请输入10个整数:\n");
while (i < 10) {
if (!scanf("%d", &arr[i++])) {
fprintf(stderr, "input error!\n");
}
}
printf("-------------------------------------\n");
for (i = 0; i < M; i++) {
printf("%d ", arr[i]);
}
printf("\n");
for (i = 0; i < M - 1; i++) {
for (j = 0; j < M - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
for (i = 0; i < M; i++) {
printf("%d ", arr[i]);
}
printf("\n");
exit(0);
}
三、选择排序
基本排序实现:
#include <stdio.h>
#include <stdlib.h>
#define M 10
int main() {
printf("start coding..\n");
int i = 0, j = 0, temp, ret;
//int arr[M] = { 4, 7, 5, 2, 8, 9, 3, 1, 0, 6};
int arr[M];
while (i < M) {
ret = scanf("%d", &arr[i++]);
if (ret != 1) {
fprintf(stderr, "input error!\n");
exit(0);
}
}
printf("----------------------------------\n");
for (i = 0; i < M; i++) {
printf("%d ", arr[i]);
}
printf("\n");
for (i = 0; i < M - 1; i++) {
for (j = i + 1; j < M; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
for (i = 0; i < M; i++) {
printf("%d ", arr[i]);
}
printf("\n");
exit(0);
}
四、十进制转其他进制
进制间的转换实现
#include <stdio.h>
#include <stdlib.h>
int main() {
printf("start coding..\n");
int i = 0, n[128];
int base, num;
printf("请输入转换的数:\n");
scanf("%d", &num);
printf("请输入进制数:\n");
scanf("%d", &base);
if (base <= 1 || base > 16) {
fprintf(stderr, "请不要闹!\n");
exit(0);
}
do {
n[i] = num % base;
num = num / base;
i++;
} while (num != 0);
printf("转换后的数为:\n");
for (i--; i >= 0; i--) {
if (n[i] >= 10)
printf("%c", n[i] - 10 + 'A');
else
printf("%d", n[i]);
}
printf("\n");
exit(0);
}
五、利用数组下标求素数
利用数组求素数
#include <stdio.h>
#include <stdlib.h>
void prime();
int main() {
printf("start coding..\n");
prime();
exit(0);
}
void prime() {
char arr[1001] = { 0 };
int i, j;
for (i = 2; i < 1001; i++) {
if (arr[i] == 0) {
for (j = i * 2; j < 1001; j += i) {
arr[j] = 1;
}
}
}
for (i = 1; i < 1001; i++) {
if (arr[i] == 0) {
printf("%d ", i);
}
}
printf("\n");
}