1. 实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定, 输入9,输出9*9口诀表,输入12,输出12*12的乘法口诀表
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void mul(int n)
{
int i = 0;
for(i=1;i<=n;i++)
{
int j = 0;
for(j=1;j<=i;j++)
{
printf("%2d*%2d=%3d ",i,j,i*j);
}
printf("\n");
}
}
int main()
{
int a = 0;
printf("请输入需要打印的行:");
scanf("%d",&a);
mul(a);
return 0;
}
2. 使用函数实现两个数的交换
#define _CRT_SECURE_NO_WARNINGS 1
void Swap(int *x,int *y)
{
int tmp = *x;
*x=*y;
*y=tmp;
}
int main()
{
int a = 0;
int b = 0;
printf("请输入两个数:");
scanf("%d %d",&a,&b);
printf("a=%d b=%d\n",a,b);
Swap(&a,&b);
printf("a=%d b=%d\n",a,b);
return 0;
}
3. 实现一个函数判断year是不是润年
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int is_leap(int y)
{
return (y%4==0 && y%100!=0)||(y%400==0);
}
int main()
{
int year = 0;
printf("请输入年份:");
scanf("%d",&year);
if(is_leap(year))
printf("是闰年\n");
else
printf("不是闰年\n");
return 0;
}
4. 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void init(int arr[],int sz)
{
int i = 0;
for(i=0;i<sz;i++)
{
arr[i]=i;
printf("%d ",arr[i]);
}
}
void empty(int arr[],int sz)
{
int i = 0;
for(i=0;i<sz;i++)
{
arr[i]=0;
printf("%d ",arr[i]);
}
}
void reverse(int arr[],int sz)
{ int i = 0;
int left = 0;
int right = sz-1;
for(i=0;i<sz;i++)
{
while(left<right)
{
int tmp = 0;
tmp=arr[left];
arr[left]=arr[right];
arr[right]=tmp;
left++;
right--;
}
printf("%d ",arr[i]);
}
}
int main()
{
int arr[]={1,2,3,4,5,6,7,8,9};
int sz=sizeof(arr)/sizeof(arr[0]);
printf("初始化数组:\n");
init(arr,sz);
printf("\n");
printf("逆置数组元素:\n");
reverse(arr,sz);
printf("\n");
printf("清空数组:\n");
empty(arr,sz);
printf("\n");
return 0;
}
5.实现一个函数,判断一个数是不是素数
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <math.h>
int prime(int n)
{
int i = 0;
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
return -1;
}
return 0;
}
int main()
{
int a = 0;
int ret = 0;
printf("请输入一个数:");
scanf("%d",&a);
ret=prime(a);
if(ret==-1)
printf("不是素数\n");
else
printf("是素数\n");
return 0;
}