C语言模拟练习(6)

程序代码:

#include<stdio.h>
#include<stdlib.h>

//1> 实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,
//输入9,输出9*9口诀表,输入11,输出11*11的乘法口诀表。

void print_multipilication_table(int value){
int i = 1;
printf("%d*%d乘法表:\n",value,value);
for(;i<=value;++i){
int j = 1;
for(;j<=i;++j){
printf("%2d * %2d = %2d ",i, j ,i*j);
}
printf("\n");
}
}
void text_print_multipilication_table(){
int value ;
printf("请输入乘法表的n值:》");
scanf("%d",&value);
print_multipilication_table(value);
}


//2> 使用函数实现俩个数的交换。
void swap(int* a,int* b){
int tmp = *a;
*a = *b;
*b= tmp;
}
void text_swap(){
int value1= 10;
int value2= 12;
printf("交换前:\n");
printf("value1 = %d    value2 = %d \n",value1,value2);
//调用交换函数,将value1与value2的值进行交换
//此时我们应该注意传入值,应该为参数地址值(传址)

swap(&value1,&value2);
printf("交换后\n");
printf("value1 = %d    value2 = %d \n",value1,value2);
}


//3> 实现一个函数判断year是不是闰年。
int is_leap_year(int year){
//判断year是否为闰年,我们应该判断是否可以整除4,
//但不能整除100,或可以整除400,如果可以则表示为
//闰年,返回1,否则返回0.

if((year%4==0&&year%100!=0)||year%400==0){
return 1;
}
return 0;
}
void text_is_leap_year(){
int year;
int ret;
printf("输入将要判断的年:》");
scanf("%d",&year);
//调用函数,进行判断
ret = is_leap_year(year);
if(ret == 1){
printf("%d 是闰年!\n",year);
}else{
printf("%d 不是闰年!\n",year);
}
return;
}
//4> 实现一个函数,判断一个数是不是素数。
//函数返回1,表示这个数为素数,否则不是素数

int is_prime(int value){
int i =2;
for(;i<=value/2;++i){
if(value%i==0){
return 0;
}
}
if(i>=value/2){
return 1;
}
}
void text_is_prime(){
int value;
int ret;
printf("请输入一个判断数:》");
scanf("%d",&value);
//调用函数,判断该数是否为素数
ret = is_prime(value);
if(ret == 1){
printf("%d 是素数!\n",value);
}else{
printf("%d 不是素数!\n",value);
}
return;
}


int main(){
text_print_multipilication_table();
text_swap();
text_is_leap_year();
text_is_prime();
return 0; 
}

检测结果:


猜你喜欢

转载自blog.csdn.net/cyd_csdn/article/details/80040332