写在前面
- 主要涉及C/C++趣味编程应用及解析
- 面向初学者撰写专栏,个人代码原创
- 如有错误之处请各位读者指正,各位可以类比做自己的编程作业
- 请读者评论回复、参与投票,反馈给作者,我会获得持续更新各类干货的动力。
致粉丝:可以在阅读完我的文章后,自己尝试写一点原创心得(哪怕一行字也好)。
希望众(尽管400个)粉丝多多支持、浏览、自我创作@_@
本文源代码及生成程序下载链接
C语言求幂运算(尽大支持)-中文式奇特命名()中文版https://download.csdn.net/download/Chinese_mad_Boy/87351205C语言求幂运算(不带注释)https://download.csdn.net/download/Chinese_mad_Boy/87351207C语言求幂运算(英文命名带中文注释)https://download.csdn.net/download/Chinese_mad_Boy/87351474
中文式命名新版本编译器支持中文GB编码可以
//power.c
//幂的计算(中文版)
#pragma warning(disable : 4996) //解除VS2022编译器scanf警告
#pragma warning(disable : 6031) //解除VS2022编译器getchar()函数无返回值警告
#include //包含I(in输入)/O(out输出)函数定义
double 计算(double 底数源, int 指数源);
/*声明函数(计算机制函数)底数源与指数源
由main函数中的用户实际输入的
浮点型“底数”与整型“指数”实际替换*/
int main(void)
{
double 底数, 幂; //声明浮点型变量
int 指数; //声明整型变量
printf("请输入底数与指数(输入q来退出):\n");
while (scanf("%lf%d", &底数, &指数) == 2)//用户输入同时检测是否输入2个正确参数值
{
幂 = 计算(底数, 指数);
//计算结果引用
printf("%.3g 的%d 次方 是%.5g。\n", 底数, 指数, 幂);
printf("请再输入底数与指数(输入q来退出):\n");
}
printf("计算愉快\n");
return 0;
}
double 计算(double 底数源, int 指数源)//幂运算函数块
{
double 乘积 = 1.0; //初始化乘积(即:幂的结果初始值)
int 乘法运算次数; //乘法运算多次,在下面循环多次底数乘以底数达到计算幂的目的
for (乘法运算次数 = 1; 乘法运算次数 <= 指数源; 乘法运算次数++)
/*若a为底数,x为指数,则当乘积运算一次时的结果为:
1*底数=a,将乘积在运行循环第一个表达式时赋值为底数
当执行并检测完是否满足条件时,递增次数直到把底数a*底数a乘以了x次
从而实现了计算a的x次方,得到幂值,即多次相同的乘法运算进行x次
*/
乘积 *=底数源; //把乘积1乘以底数源(即底数),再把新值重新更新赋给旧值
return 乘积;//返回乘积(幂)的值
}
鉴于本程序不符和常规编程练习,特此声明
正常运行示例:
//power.c
//幂的计算(英文版)
#pragma warning(disable : 4996) //解除VS2022编译器scanf警告
#pragma warning(disable : 6031) //解除VS2022编译器getchar()函数无返回值警告
#include //包含I(in输入)/O(out输出)函数定义
double p(double d_base, int i_exponent);
/*声明函数p(power幂的英文首字母)(实现计算乘方功能)形参底数d_base与形参指数i_exponent
由main函数中的用户实际输入的
浮点型(实参)变量base与整型(实参)变量exponent替换*/
int main(void)
{
double base, power; //声明浮点型变量底数base与乘方结果幂值
int exponent; //声明整型变量
printf("请输入底数与指数(输入q来退出):\n");
while (scanf("%lf%d", &base, &exponent) == 2)//用户输入同时检测是否输入2个正确参数值
{
power = p(base, exponent);
/*计算乘方结果函数调用,
同时将实参带入原来形参,
将调用函数返回值赋给要显示的乘方结果幂值*/
printf("%.3g 的%d 次方 是%.5g。\n", base, exponent, power);
printf("请再输入底数与指数(输入q来退出):\n");//循环输入
}
printf("计算愉快\n"); //循环结束语
getchar();
return 0;
}
double p(double d_base, int i_exponent)//幂运算函数块
{
double product = 1.0; //初始化乘积product(即:幂的结果初始值)
int times; //乘法运算多次,在下面循环多次底数乘以底数达到计算幂的目的
for (times = 1; times <= i_exponent; times++)
/*若a为底数,x为指数,则当乘积运算一次时的结果为:
1*底数=a,将乘积在运行循环第一个表达式时赋值为底数
当执行并检测完是否满足条件时,递增次数直到把底数a*底数a乘以了x次
从而实现了计算a的x次方,得到幂值,即多次相同的乘法运算进行x次
*/
product *= d_base; //把乘积1乘以底数源(即底数),再把新值重新更新赋给旧值
//等同于product=d_base*product
return product;//返回计算乘方积(幂)的值
}
1.#pragma warning(disable : 4996)
可以解除VS2022编译器scanf警告
2.#include
包含I(in输入)/O(out输出)函数定义,C语言中重要的头文件,在C库中
3.实现部分
double p(double d_base, int i_exponent);
声明函数p(power幂的英文首字母)(实现计算乘方功能)形参底数d_base与形参指数i_exponent
由main函数中的用户实际输入的
浮点型(实参)变量base与整型(实参)变量exponent替换
4.scanf("%lf%d", &base, &exponent) == 2
用户输入同时检测是否输入2个正确参数值
5. power = p(base, exponent);
计算乘方结果函数调用,
同时将实参带入原来形参,
将调用函数返回值赋给要显示的乘方结果幂值
6.printf("%.3g 的%d 次方 是%.5g。\n", base, exponent, power);
输入显示验证,结果显示
7.double p(double d_base, int i_exponent){}
实际运算函数块
8.int times;
乘法运算多次,在下面循环多次底数乘以底数达到计算幂的目的
9.for (times = 1; times <= i_exponent; times++)
循环部分
若a为底数,x为指数,则当乘积运算一次时的结果为:
1*底数=a,将乘积在运行循环第一个表达式时赋值为底数
当执行并检测完是否满足条件时,递增次数直到把底数a*底数a乘以了x次
从而实现了计算a的x次方,得到幂值,即多次相同的乘法运算进行x次
10.product *= d_base;
把乘积1乘以底数源(即底数),再把新值重新更新赋给旧值
等同于product=d_base*product
11.return product;
返回计算乘方积(幂)的值
今天我们共同学习了C语言循环、条件检测、函数参数及返回值等重要知识。
学习编程是一条漫长的路,贵在坚持。每天学习来提升自己的的编程能力,成为耀眼的IT之星。
各位读者跟随我的脚步,我们共同努力,共同进步吧!
返回作者主页
专栏下一篇文档:(待更新)
其它文章:C++学习/温习笔记:源码学编程(一)
简洁易懂地介绍C++参数
学习C++基本数值类型
C/C++基础运算符
¥_¥持续更新 $ _ $
如有探讨问题联系邮箱:[email protected]
对于文章中的错误请各位批评指正,我一定及时更正
请在投票后评论回复意见,如有关于写博文的指导也请您回复提出