高级语言程序设计课程第四次个人作业

这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/gjyycx
这个作业要求在哪里:https://edu.cnblogs.com/campus/fzu/gjyycx/homework/14577
学号:102500305
姓名:赖晓娟

一.运行以下程序给出程序结果(无需代码,截图程序输出结果,如有错误可自行修改)。
(1)

include<stdio.h>

int main(void) // 对用户输入的整数求和
{ long num; long sum = 0L; int status;
printf("Please enter an integer to be summed ");
printf("(q to quit): ");
status = scanf("%ld", &num);
while (status == 1) // == means "is equal to"
{ sum = sum + num;
printf("Please enter next integer (q to quit): ");
status = scanf("%ld", &num);
}
printf("Those integers sum to %ld.\n", sum);
return 0;
}屏幕截图 2025-11-04 140712

(2)

include <math.h>

include <stdio.h>

int main(void)
{ const double ANSWER = 3.14159;
double response;
printf("What is the value of pi?\n");
scanf("%lf", &response);
while (fabs(response - ANSWER) > 0.0001)
{ printf("Try again!\n");
scanf("%lf", &response);
}
printf("Close enough!\n");
return 0;
}屏幕截图 2025-11-04 140911

二.用while和do while分别设计程序实现:用公式π/4=1-1/3+1/5-1/7+1/9+...求π的近似值,直到某一项的绝对值小于10-4为止,对两个程序的不同之处进行讨论。
while
屏幕截图 2025-11-04 144500

do while
屏幕截图 2025-11-04 145325
区别:while先判断条件,若条件满足再执行循环体;若初始条件不满足,循环体一次都不执行;
do while先执行循环体,再判断条件;循环体至少执行一次。

三.设计一个程序,实现功能:逻辑表达式中的运算符,只有会影响表达式求值时,才会执行。
逻辑与&&:左边一旦出现假,整个表达式已确定为假,右边就不继续执行。
屏幕截图 2025-11-04 150942
逻辑或||:左边一旦出现真,整个表达式已确定为真,右边就不继续执行。
屏幕截图 2025-11-04 151443

四.用for循环输出六行,第一行有FEDCBA,第二行是FEDCB,第三行是FEDC....,以此类推。
屏幕截图 2025-11-04 152940

五.编程输入n, 计算s=1+(1+2)+(1+2+3)+…+(1+2+3+4+…n)。
屏幕截图 2025-11-04 171832

六.用for循环给一组整型类型的数组进行赋值,输出,以及求和,数组长度为8。
屏幕截图 2025-11-04 174434
注意:整数类型的数组不能直接用%输出,只能逐个输出数组元素。

七.设计一个if和else的多分支程序(分支数目大于3),该多分支程序再用switch语句进行改写,同时设计一个使用条件运算符(?:)的双分支语句。
if else
屏幕截图 2025-11-04 180130

switch
屏幕截图 2025-11-04 180523

?:
屏幕截图 2025-11-04 181302

八.设计一个循环程序,再循环中用break和continue语句,实现不同的程序效果,给出结果并讨论。
屏幕截图 2025-11-07 202812

continue 的作用:
当 i 是偶数时, continue 会跳过当前循环的后续代码( printf ),直接进入下一次 i++ 的循环,所以结果中没有偶数。

break 的作用:
当 i=15 时, break 会直接终止整个 for 循环,所以循环在 i=15 时停止,不会继续执行后续的 i=17、19 。

九.设计一个程序求100~200间的全部素数,给出算法思想、传统流程图、程序NS流程图。

屏幕截图 2025-11-07 211800

1.算法思想
16e73339818e6037f8663cd34fa880a2

2.传统流程图
f2a2a6cbde5ef74dc36b5323c8a83188

3.NS流程图
2cd76e39db5c5e90aec6ce60fd3e403c

十.编写并运行书本第6章6.16编程练习题目中的第1,5,7,10,13,16,18题。
1.编写一个程序,创建一个包含26个元素的数组,并在其中储存26个小写字母,然后打印数组中的所有内容
联想截图_20251108160517

5.打印大写字母金字塔
联想截图_20251108164304
注意:3个内层循环分别处理空格、以升序打印字母、以降序打印字母。然后直接换行。

7.倒序打印单词
联想截图_20251108170450
注意:输入“world”返回字符串长度为5,但world的下标分别为01234(0~n-1)。

10.打印平方和
联想截图_20251109225106

13.用for设置2的前8次幂的数组,用do while打印
联想截图_20251108224852
法一:直接使用math.h库的pow函数。注意:1.pow()是浮点型函数,返回值为double类型。2.头文件必须包含<math.h>。
** 例如double result=pow(2,3);//2^3**
法二:循环累乘
** 例如arr[0]=1;for(i=1;i<8;i++){arr[i]=arr[i-1]*2;}**

16.Daphne和Deidre两种利息方式的投资收益比较
联想截图_20251108233337

18.
联想截图_20251108234403

十一.编写并运行书本第7章7.12编程练习题目中的第1,2,4~5,7题。
1.
联想截图_20251109010635
对字符输入输出函数:getchar()和putchar()

2.联想截图_20251109012210

4.联想截图_20251109013551
注意:输出两个!别写成putchar('!!'),应为putchar('!');putchar('!')。

5.联想截图_20251109022509

7.联想截图_20251109023807

总结和反思:本次作业主要针对while,do while,数组,continue和break进行了复习,学习了平方的运算,但是对于嵌套循环的题目花费较长时间。

posted @ 2025-11-09 02:31  Whooooo  阅读(14)  评论(0)    收藏  举报