300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > -成信大-C语言程序设计-1学期《C语言程序设计B》C-trainingExercises03

-成信大-C语言程序设计-1学期《C语言程序设计B》C-trainingExercises03

时间:2021-02-10 23:03:18

相关推荐

-成信大-C语言程序设计-1学期《C语言程序设计B》C-trainingExercises03

文章目录

-成信大-C语言程序设计-1学期《C语言程序设计B》C-trainingExercises03P122P708P133P135P721P735

-成信大-C语言程序设计-1学期《C语言程序设计B》C-trainingExercises03

P122

题解和分析

/*编写一程序P122.C实现以下功能从键盘读入4个数num1、num2、num3、num4,输出:(num1÷num2的余数)×num3+num4,不需考虑num2为0和计算结果溢出的情况。要求输出的结果中,整数部分宽度为8(不足8时以0补足)、小数部分宽度为7。编程可用素材:printf("请输入4个数:")、printf("\n计算结果为:…。程序的运行效果应类似地如图1和图2所示,图中的红色部分是从键盘输入的内容。请输入4个数:100 30 100.1234567 25计算结果为:00001026.2345670图1 程序运行效果示例请输入4个数:22 12 100.12345678 1000000计算结果为:01001001.2345678知识点:1. 取模运算,必须是整数,即求余运算2. 自动发生类型转换,编译器会把运算结果向double转换3. 格式输出时,位宽,小数点位数限制%lf 保留6位小数%m.nlf共占m位,包括小数点,有n位小数%0m.nlf共占m位,包括小数点,有n位小数,整数位不足时,高位补0 */#include <stdio.h>int main(void){int num1, num2, num4;double num3;printf("请输入4个数:");scanf("%d %d %lf %d", &num1, &num2, &num3, &num4);// 输出:(num1÷num2的余数)×num3+num4printf("\n计算结果为:%016.7lf", (num1 % num2) * num3 + num4);return 0;}

P708

题解和分析

/*编写一程序P708.C实现以下功能输入一个三位正整数,然后逆序输出。如输入123,则输出321。编程可用素材:printf("Input an integer: ")、printf("\nThe result is …。程序的运行效果应类似地如图1所示,图中的红色部分是从键盘输入的内容。Input an integer: 750The result is 057*/#include <stdio.h>int main(void){int data;int gw, sw, bw;printf("Input an integer: ");scanf("%d", &data);// 解析出每一位gw = data % 10;bw = data / 100;sw = data % 100 / 10;printf("\nThe result is %d%d%d\n", gw, sw, bw);return 0;}/*分析:1. 整数除法,得到的是商这一部分2. 整数取模,或叫整数取余,得到的是余这一部分*/

P133

题解和分析

/*编写一程序P133.C实现以下功能通过键盘输入一组十进制数(约定为11个),输出每个数对应的ASCII码字符。编程可用素材:printf("\n请输入11个数字:")、printf("\n解密结果为:…。程序的运行效果应类似地如图1所示,图1中的红色部分是从键盘输入的内容。请输入11个数字:73 32 76 111 118 101 32 89 111 117 33解密结果为:I Love You!*/#include <stdio.h>int main(void){int data1, data2, data3, data4, data5;int data6, data7, data8, data9, data10;int data11;printf("请输入11个数字:");scanf("%d %d %d %d %d %d %d %d %d %d %d",&data1, &data2, &data3, &data4, &data5,&data6, &data7, &data8, &data9, &data10, &data11);printf("\n解密结果为:%c%c%c%c%c%c%c%c%c%c%c\n",data1, data2, data3, data4, data5,data6, data7, data8, data9, data10, data11);return 0;}/*分析:1. 在实际编程时,变量多了以后,要注意排版,让程序更容易编写和调试2. 当把输入和输出的格式对调以后,就是所谓的加密和解密,如果对方觉得这很浪漫,可以试一下用这样的方式来加密自己的表白,但:祝你好运。3. 真正的信息安全学里的加密和解密,原理上和这差不多,但算法实现上,差别很大,有兴趣可以做进一步的学习和了解4. 熟悉ASCII码表,是一个程序员的基本素养*/

P135

题解和分析

/*编写一程序P135.C实现以下功能通过键盘输入弧度x,输出x的正弦值(可用库函数sin)。编程可用素材:printf("请输入弧度 x: ")、printf("\nSin(…) = …\n"…。程序的运行效果应类似地如图1所示,图1中的红色部分是从键盘输入的内容。请输入弧度 x: 1.552Sin(1.55) = 0.99982*/#include <stdio.h>#include <math.h>int main(void){double rad;printf("请输入弧度 x: ");scanf("%lf", &rad);printf("\nSin(%.2lf) = %.5lf\n", rad, sin(rad));return 0;}/*分析:1. 对于库函数的了解和使用,是一个程序员的基本技能,这也是“站到巨人肩上”的第一步2. 对于函数的调用,要明确所在头文件名函数名入口参数,顺序,类型等函数的返回3. 以后,在库不够的情况下,就需要自己写编写函数了4. 可以充分相信C的库函数,因数它是结晶,是经过工业和行业检验了的*/

P721

题解和分析

/*编写一程序P721.C实现以下功能从键盘输入x,y,z的值,编写程序输出以下表达式的值:x+z%3*(int)(x+y)%2/4编程可用素材:printf("please input x,y,z: ")、printf("\nResult = …。程序的运行效果应类似地如图1所示,图1中的红色部分是从键盘输入的内容。please input x,y,z: 2.5,4.7,7Result = 2.500000*/#include <stdio.h>int main(void){int data3;double data1, data2;printf("please input x,y,z: ");scanf("%lf,%lf,%d", &data1, &data2, &data3);printf("\nResult = %lf\n", data1 + data3 % 3 * (int)(data1 + data2) % 2 / 4);return 0;}/*分析:1. 数学表达式【数学课中】和程序表达式【C语言中】有区别2. 事先进行强制转换,是可以保证结果正确,精度可靠的,但如果使用自动转算方式,不利于初学者思考和学习3. %f和%lf默认的小数点后是6位4. 整个表达式最终结果是什么数据类型,取决于程序员对运算过程的控制和参与运算的数据或是变量的类型,但肯定是往范围更大的数据类型转换,才可以保证结果和精度是正确的*/

P735

题解和分析

/*编写一程序P735.C实现以下功能从键盘输入一个正三角形的边长(整型),计算该三角形的面积和周长。注:根据“海伦-秦九韶”公式,area=√p(p-a)(p-b)(p-c),其中p=(a+b+c)/2、a,b,c为三角形的3条边长。编程可用素材:printf("Input a side of triangle: ")、printf("\nThe area of triangle is …, the circle of triangle is ….。程序的运行效果应类似地如图1所示,图1中的5是从键盘输入的内容。Input a side of triangle: 5The area of triangle is 10.83, the circle of triangle is 15.*/#include <stdio.h>#include <math.h>int main(void){int edge;int circle;double semi_circle;double area;printf("Input a side of triangle: ");scanf("%d", &edge);circle = 3 * edge;semi_circle = (double)circle / 2;area = sqrt(semi_circle * (semi_circle - edge) * (semi_circle - edge) * (semi_circle - edge));printf("\nThe area of triangle is %.2lf, the circle of triangle is %d.\n", area, circle);return 0;}/*分析1. 库函数应用,程序员要熟悉常用的库函数,否则,同一道题不同的程序员,难度读解就差别很大2. 要特别注意运算完成后的数据类型的变化,先是整型,运算完成后,可能产生浮点型,就建议先做转化再运算,以保证精度3. 中间变量,在性能要求不高的情况下,建议自己定义变量业代入,方便编写,调试,思考4. 表达式和语句,不宜写太长,注意适当使用短句或是断句,断行编辑*/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。