1 实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,输入9,输出9乘9口诀表,输入12,输出12乘12的乘法口诀表
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int a;
int fun() {
for (int i = 1; i <= a; i++) {
for (int j = 1; j <= i; j++)
printf("%d*%d=%d ", i, j, i*j);
printf("\n");
}
}
int main() {
printf("希望输出最大为几乘几的乘法口诀表:");
scanf("%d", &a);
printf("乘法口诀表:\n");
fun();
system("pause");
return 0;
}
2 使用函数实现两个数的交换
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void fun(int *px, int *py) {
int t=0;
t = *px;
*px = *py;
*py = t;
}
int main() {
int a, b;
printf("请输入a:\n");
scanf("%d", &a);
printf("请输入b:\n");
scanf("%d", &b);
fun(&a, &b);
printf("交换后:a=%d,b=%d\n", a, b);
system("pause");
return 0;
}
3 实现一个函数判断year是不是润年
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int a;
int fun(int x) {
if (x % 4 == 0 && x / 100 != 0) {
a = 1;
}
else if (x % 400 == 0) {
a = 1;
}
else
a = 0;
}
int main() {
int year;
printf("请输入一个年份判断是不是润年,是润年输出1,不是润年输出0:\n");
scanf("%d", &year);
fun(year);
printf("%d\n", a);
system("pause");
return 0;
}
4 创建一个数组,实现函数init()初始化数组、实现empty()清空数组、实现reverse()函数完成数组元素的逆置。要求:自己设计函数的参数,返回值
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int i;
int arr[5];
void meun(){
printf("******************\n");
printf("**1.初始化数组****\n");
printf("**2.清空数组******\n");
printf("**3.数组数据逆置**\n");
printf("**4.退出程序******\n");
printf("******************\n");
}
void init() {
for (i = 0; i <= 4; i++) {
scanf("%d", &arr[i]);
}
}
void empty() {
int c = 0;
for (c = 0; c <= 4; c++){
arr[c] = 0;
}
}
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
void reverse(int* arr, int size) {
int left = 0;
int right = size - 1;
while (left < right) {
swap(&arr[left], &arr[right]);
++left;
--right;
}
}
int main() {
int a;
int count = 1;
meun();
while (count == 1) {
printf("请选择:");
scanf("%d", &a);
switch(a) {
case 1: {
printf("请输入五个数字放入数组:\n");
init();
printf("数组为:\n");
for (i = 0; i <= 4; i++) {
printf("%d ", arr[i]);
}
printf("\n");
break;
}
case 2: {
empty();
printf("清空后数组为:\n");
for (i = 0; i <= 4; i++) {
printf("%d ", arr[i]);
}
printf("\n");
break;
}
case 3:{
reverse(arr,5);
printf("逆置后数组为:\n");
for (i = 0; i <= 4; i++) {
printf("%d ", arr[i]);
}
printf("\n");
break;
}
case 4:{
count = 0;
break;
}
default:{
printf("输入错误,请重新选择!:\n");
}
}
}
system("pause");
return 0;
}
5 实现一个函数,判断一个数是不是素数
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int i;
void fun() {
i;
for (int j = 2; j <= sqrt(i); j++) {
if (i % j == 0) {
printf("不是素数!\n");
break;
}
else{
printf("是素数!\n");
break;
}
}
}
int main() {
printf("请输入一个自然数,判断是不是素数:\n");
scanf("%d", &i);
if (i == 0 || i == 1) {
printf("不是素数!\n");
}
else if (i == 2 || i == 3) {
printf("是素数!\n");
}
else if (i < 0) {
printf("输入错误!\n");
}
else {
fun();
}
system("pause");
return 0;
}