c语言比大小模板,【C语言笔记】分享一个C语言测试程序模板

#include

#include

#include

#include

// 功能函数声明

void exchange(int *a, int *b); // 交换a,b的值最好的方法

// 测试函数声明

void test1(void); // 测试函数1:交换a,b的值

void test2(void); // 测试函数2:C语言预定义宏

void test3(void); // 测试函数3:C89与C99标准的区别

void test4(void); // 测试函数4:输出当前编译器数据类型范围

// 菜单

int menu(void);

/*=============================================================================

主函数

==============================================================================*/

int main(void)

{

int cmd = 0;

for (;;) // 死循环,等价于while(1)

{

cmd = menu(); // 读取用户输入的指令

switch (cmd)

{

case 1 : test1(); break; // 测试函数1:交换a,b的值

case 2 : test2(); break; // 测试函数2:C语言预定义宏

case 3 : test3(); break; // 测试函数3:C89与C99标准的区别

case 4 : test4(); break; // 测试函数4:输出当前编译器数据类型范围

case -1: exit(0); break; // 退出程序

case -2: system("cls"); break; // 清空屏幕

default:break;

}

}

return 0;

}

/*=============================================================================

以下是功能函数实体

==============================================================================*/

/* 交换a,b的值 */

void exchange(int *a, int *b)

{

*a = *a^*b;

*b = *a^*b;

*a = *a^*b;

}

/*=============================================================================

以下是测试函数实体

==============================================================================*/

/* 交换a,b的值 */

void test1(void)

{

system("cls");

int a = 13, b = 14;

printf("交换之前a = %d, b = %dn", a, b);

exchange(&a, &b);

printf("交换之后a = %d, b = %dn", a, b);

}

/* C语言预定义宏 */

void test2(void)

{

system("cls");

printf("当前代码行号:%dn", __LINE__);

printf("当前编译日期:%sn", __DATE__);

printf("当前编译时间:%sn", __TIME__);

printf("当前文件名称:%sn", __FILE__);

printf("当前函数名称:%sn", __FUNCTION__);

}

/* C89与C99标准的区别 */

void test3(void)

{

int i;

system("cls");

// C99允许在for循环内定义循环变量,而C89不允许

// gcc -std=c99 test.c -o test.exe

// for (int i = 0; i < 5; i++)

for (i = 0; i < 5; i++)

{

printf("hello world!n");

}

}

/* 输出当前编译器数据类型范围 */

void test4(void)

{

system("cls");

printf("char的范围为: %d —— %dn", CHAR_MIN, CHAR_MAX);

printf("unsigned char的范围为: %u —— %unn", 0, UCHAR_MAX);

printf("short的范围为: %hd —— %hdn", SHRT_MIN, SHRT_MAX);

printf("unsigned short的范围为: %hu —— %hunn", 0, USHRT_MAX);

printf("int的范围为: %d —— %dn", INT_MIN, INT_MAX);

printf("unsigned int的范围为: %u —— %unn", 0, UINT_MAX);

printf("long的范围为: %ld —— %ldn", LONG_MIN, LONG_MAX);

printf("unsigned long的范围为: %lu —— %lunn", 0, ULONG_MAX);

printf("long long的范围为: %lld —— %lldn", LLONG_MIN, LLONG_MAX);

printf("unsigned long long的范围为: %llu —— %llunn", 0, ULLONG_MAX);

}

/*=============================================================================

以下是菜单函数

==============================================================================*/

int menu(void)

{

int cmd = 0;

char buf[10] = {0};

// 菜单信息输出

printf("=============================菜单==============================n");

printf("[01]测试:交换a,b的值n");

printf("[02]测试:C语言预定义宏n");

printf("[03]测试:C89与C99标准的区别n");

printf("[04]测试:输出当前编译器数据类型范围n");

printf("[-1]退出n");

printf("[-2]清屏n");

printf("===============================================================n");

do{

printf("请输入您的选择:");

gets(buf);

cmd = atoi(buf);

}while (cmd < 1 && cmd > 4);

return cmd;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值