您的位置:首页 > 新闻 > 热点要闻 > 包装设计接单网站_站长工具亚洲高清_淄博网站seo_百度广告投诉电话客服24小时

包装设计接单网站_站长工具亚洲高清_淄博网站seo_百度广告投诉电话客服24小时

2024/10/31 15:11:07 来源:https://blog.csdn.net/qq_53139964/article/details/143108886  浏览:    关键词:包装设计接单网站_站长工具亚洲高清_淄博网站seo_百度广告投诉电话客服24小时
包装设计接单网站_站长工具亚洲高清_淄博网站seo_百度广告投诉电话客服24小时

目录

本章常见错误小结

习题测试


本章常见错误小结


习题测试

3.1 分析并写出下列程序的运行结果。

#include <stdio.h>int main(void)
{int a = 12, b = 3;float x = 18.5, y = 4.6;// 先计算 a * b 的结果,再将结果转换为 float 类型,最后除以 2printf("%f\n", (float)(a * b) / 2);// 将 x 和 y 转换为整数类型,然后进行取模运算printf("%d\n", (int)x % (int)y);return 0;
}

        运行结果如下所示:

#include <stdio.h>int main(void)
{int x = 32, y = 81, p, q;// x++ 先将 x 的值赋给 p,然后 x 自增 1p = x++;// --y 先将 y 自减 1,然后将 y 的值赋给 qq = --y;// 输出 p 和 q 的值printf("%d %d\n", p, q);// 输出 x 和 y 的值printf("%d %d\n", x, y);return 0;
}

        运行结果如下所示:


3.2 参考例 3.1 程序,从键盘任意输入一个 3 位整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入 -123,则忽略负号,由 123 分离出其百位 1、十位 2、个位 3,然后计算 3 * 100 + 2 * 10 + 1 = 321,并输出 321。

#include <stdio.h> // 包含标准输入输出库
#include <math.h>  // 包含数学库,用于使用 fabs 函数int main(void)
{// 声明变量:number 存储输入的数字,b 存储百位数,s 存储十位数,g 存储个位数,sum 存储反转后的数字int number, b, s, g, sum;printf("Input number:"); // 提示用户输入一个数字scanf("%d", &number);     // 从标准输入读取一个整数并存储在变量 number 中// 将 number 转换为绝对值,确保处理的是非负数number = (int)fabs(number);// 计算百位数 bb = number / 100; // 将 number 除以 100,得到百位数// 计算十位数 ss = (number - b * 100) / 10; // 先从 number 中减去百位数乘以 100,再除以 10 得到十位数// 计算个位数 gg = number % 10; // 使用取模运算得到个位数// 计算反转后的数字 sumsum = g * 100 + s * 10 + b; // 将个位数、十位数、百位数按反转顺序重新组合// 输出反转后的数字printf("sum=%d", sum);return 0; // 程序正常结束
}

        运行结果如下所示:


3.3 设银行定期存款的年利率 rate 为 2.25%,已知存款期为 n 年,存款本金为 capital 元,试编程以复利方式计算并输出 n 年后的本利之和 deposit。

#include <stdio.h> // 包含标准输入输出库
#include <math.h>  // 包含数学库,用于使用 pow 函数
/*分析:如果存 1 年:deposit = capital*( 1 + rate)如果存 2 年:deposit = capital*( 1 + rate)*( 1 + rate)如果存 n 年:deposit = capital*( 1 + rate)^n*/
int main(void)
{int n;          // 存款期变量声明double capital; // 存款本金变量声明double deposit; // 本利之和变量声明const double RATE = 0.0225; // 存款年利率变量声明printf("Please enter year, capital : ");scanf("%d,%lf", &n, &capital);deposit = capital * pow(1 + RATE, n); // 计算存款本利之和printf("deposit = %f \n", deposit);   // 打印存款本利之和return 0; // 程序正常结束
}

        运行结果如下所示:


3.4 编程计算并输出一元二次方程 a^{2}+bx+c=0 的两个实根,\frac{-b\pm \sqrt{b^{2}-4ac}}{2a} ,其中 a、b、c 的值由用户从键盘输入,假设 a、b、c 的值能保证方程有两个不相等的实根(即 b^{2}-4ac>0)。

#include <stdio.h> // 包含标准输入输出库,用于输入输出操作
#include <math.h>  // 包含数学库,用于使用 sqrt(平方根)函数int main(void)
{// 声明变量,a, b, c 为方程的系数,x1, x2 为方程的两个实根double a, b, c, x1, x2;// 从键盘输入 a, b, c 的值// 注意输入格式,这里要求用户以逗号分隔输入值printf("请输入 a, b, c 的值: ");scanf("%lf,%lf,%lf", &a, &b, &c);// 计算判别式 Δ = b^2 - 4ac// 使用 sqrt 函数计算平方根,需要包含 math.h 头文件// 注意:这里没有对判别式小于0的情况进行处理,即没有检查方程是否有实根x1 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a); // 根据求根公式计算第一个实根x2 = (-b - sqrt(b * b - 4 * a * c)) / (2 * a); // 根据求根公式计算第二个实根// 输出方程的两个实根,保留小数点后四位// 使用 %.4f 格式说明符来格式化输出printf("方程的两个实根为: %.4f 和 %.4f\n", x1, x2);return 0; // 程序正常结束,返回0
}

        运行结果如下所示: 

        注意:本程序要求用户输入的数据满足 b^2 - 4ac > 0 这个约束条件,否则,如果 b^2 - 4ac < 0,将会执行对负数开方的无效运算。运用第 4 章介绍的条件语句进行编程,可以有效解决这一问题。


3.5 参考例 3.4 和例 3.5 程序,分别使用宏定义和 const 常量定义 π 的值,编程计算并输出球的体积和表面积,球的半径 r 的值由用户从键盘输入。

使用宏定义:

#include <stdio.h>
#define PI 3.14159int main(void)
{double r; // 球的半径double volume, surface_area;// 从键盘输入球的半径printf("请输入球的半径: ");scanf("%lf", &r);// 计算球的体积和表面积volume = (4.0 / 3.0) * PI * r * r * r;surface_area = 4 * PI * r * r;// 输出球的体积和表面积printf("球的体积为: %.2f\n", volume);printf("球的表面积为: %.2f\n", surface_area);return 0;
}

使用 const 常量:

#include <stdio.h>int main(void)
{const double PI = 3.14159; // 定义实型的 const 常量 PIdouble r;                  // 球的半径double volume, surface_area;// 从键盘输入球的半径printf("请输入球的半径: ");scanf("%lf", &r);// 计算球的体积和表面积volume = (4.0 / 3.0) * PI * r * r * r;surface_area = 4 * PI * r * r;// 输出球的体积和表面积printf("球的体积为: %.2f\n", volume);printf("球的表面积为: %.2f\n", surface_area);return 0;
}

        运行结果如下所示:

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com