高级语言程序设计课程第四次个人作业
这个作业属于哪个课程: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;
}
(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;
}
二.用while和do while分别设计程序实现:用公式π/4=1-1/3+1/5-1/7+1/9+...求π的近似值,直到某一项的绝对值小于10-4为止,对两个程序的不同之处进行讨论。
while

do while

区别:while先判断条件,若条件满足再执行循环体;若初始条件不满足,循环体一次都不执行;
do while先执行循环体,再判断条件;循环体至少执行一次。
三.设计一个程序,实现功能:逻辑表达式中的运算符,只有会影响表达式求值时,才会执行。
逻辑与&&:左边一旦出现假,整个表达式已确定为假,右边就不继续执行。

逻辑或||:左边一旦出现真,整个表达式已确定为真,右边就不继续执行。

四.用for循环输出六行,第一行有FEDCBA,第二行是FEDCB,第三行是FEDC....,以此类推。

五.编程输入n, 计算s=1+(1+2)+(1+2+3)+…+(1+2+3+4+…n)。

六.用for循环给一组整型类型的数组进行赋值,输出,以及求和,数组长度为8。

注意:整数类型的数组不能直接用%输出,只能逐个输出数组元素。
七.设计一个if和else的多分支程序(分支数目大于3),该多分支程序再用switch语句进行改写,同时设计一个使用条件运算符(?:)的双分支语句。
if else

switch

?:

八.设计一个循环程序,再循环中用break和continue语句,实现不同的程序效果,给出结果并讨论。

continue 的作用:
当 i 是偶数时, continue 会跳过当前循环的后续代码( printf ),直接进入下一次 i++ 的循环,所以结果中没有偶数。
break 的作用:
当 i=15 时, break 会直接终止整个 for 循环,所以循环在 i=15 时停止,不会继续执行后续的 i=17、19 。
九.设计一个程序求100~200间的全部素数,给出算法思想、传统流程图、程序NS流程图。

1.算法思想

2.传统流程图

3.NS流程图

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

5.打印大写字母金字塔

注意:3个内层循环分别处理空格、以升序打印字母、以降序打印字母。然后直接换行。
7.倒序打印单词

注意:输入“world”返回字符串长度为5,但world的下标分别为01234(0~n-1)。
10.打印平方和

13.用for设置2的前8次幂的数组,用do while打印

法一:直接使用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两种利息方式的投资收益比较

18.

十一.编写并运行书本第7章7.12编程练习题目中的第1,2,4~5,7题。
1.

对字符输入输出函数:getchar()和putchar()
2.
4.
注意:输出两个!别写成putchar('!!'),应为putchar('!');putchar('!')。
5.
7.
总结和反思:本次作业主要针对while,do while,数组,continue和break进行了复习,学习了平方的运算,但是对于嵌套循环的题目花费较长时间。
浙公网安备 33010602011771号