#include<stdio.h>
#include<windows.h>
#include<stdlib.h>
#include<math.h>
//#pragma warning(disable:4996)
void multiplication(int n)
{
int i = 1;
for (; i <=n; i++)
{
int j = 1;
for (; j <= i; j++)
{
printf("%d*%d=%d ", i, j, i*j);
}
printf("\n");
}
}
void swap(int *a, int *b)
{
*a ^= *b;
*b ^= *a;
*a ^= *b;
}
int IsLeap(int year)
{
if ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0))
{
printf("it is a leap year\n");
}
else {
printf("it is not a leap year\n");
}
return 0;
}
int init(int arr[10])
{
int i = 0;
printf("请输入10个数字初始化数组");
for (; i < 10; i++)
{
scanf("%d", &arr[i]);
}
return arr[10];
}
int empyt(int arr[10])
{
int i=0;
for (; i < 10; i++)
{
arr[i] = 0;
}
printf("输出置零后的数组");
for (i=0; i < 10; i++)
{
printf("%d ",arr[i]);
}
printf("\n");
return arr[10];
}
int reverse(int arr[10])
{
int i = 0;
for (; i < 10 / 2; i++)
{
int temp;
temp = arr[i];
arr[i] = arr[9 - i];
arr[9 - i] = temp;
}
printf("输出逆置后的数组");
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return arr[10];
}
int IsPrime(int a)
{
int i = 2;
for (; i < (sqrt(a)); i++)
{
if (a%i == 0)
{
return 0;
}
else {
return 1;
}
}
return 0;
}
int main()
{ //1.实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,
//输入9,输出9 * 9口诀表,输入12,输出12 * 12的乘法口诀表
int n = 0;
printf("please enter the number of rows in the multiplication table:\n");
scanf("%d", &n);
multiplication(n);
//2.使用函数实现两个数的交换。
int x = 0;
int y = 0;
printf("please enter two numbers to exchange:");
scanf("%d %d", &x, &y);
swap(&x,&y);
printf("The exchanged two values: %d,%d\n", x, y);
//3.实现一个函数判断year是不是润年
int year = 0;
printf("Please enter the year you want to judge:");
scanf("%d", &year);
IsLeap(year);
//4. 创建一个数组,实现函数init()初始化数组、实现empty()清空数组、实现reverse()函数完成数组元素的逆置。
//要求:自己设计函数的参数,返回值。
int arr[10];
init(arr);
reverse(arr);
empyt(arr);
//5.实现一个函数,判断一个数是不是素数。
int number = 0;
printf("please enter a number:");
scanf("%d", &number);
if (IsPrime(number) == 1)
{
printf("是素数\n");
}
else {
printf("不是素数\n");
}
system("pause");
}