高考考试网
当前位置: 首页 高考资讯

c语言计算3阶行列式(C语言求单链表结点的阶乘和)

时间:2023-07-10 作者: 小编 阅读量: 4 栏目名: 高考资讯

今天这道题目呢,对我个人来说,可能是难度比较大的一道题目。for{n=i*n;//n的阶乘}2、而至于对该阶乘求和,则是定义一个变量sum。,同理也要放在for循环当中的。因为题目给出的是结构体,我们得来谈一谈一个符号,那就是箭头“->”符号的意思。它叫做结构体成员运算符,就是使用一个指向结构体或对象的指针访问其内部成员。通俗点来讲,以这道题目为例:L->Data,就是指向其中的内部元素Data数量。则需要用到L->Next来表示了。L=L->Next;最后返回sum的值即可。

今天这道题目呢,对我个人来说,可能是难度比较大的一道题目。

因为C语言的许多语法我还没有提及,还有数据结构部分我也没有复习到,所以做这道题目的时候,一开始我有些无从下手的。

不过后来仔细地分析了这道题目后,我感觉难度其实也还行。

毕竟阶乘和是自己接触过的算法,也知道怎么写。

无非就是单链表结点存储数据的格式该如何写,那么就根据裁判测试程序样例来写即可。

梳理逻辑

我们在做编程题目的时候,首先要做的,就是分析题目需求,显然,这道题目的要求是实现一个函数,求单链表L结点的阶乘和。

1、我们之前学过,阶乘就是n!=1x2x3x...xn,0的阶乘是1。

一般是用到一个for循环来写该阶乘。

for(int i = 1;i<= n;i){n = i*n;//n的阶乘}

2、而至于对该阶乘求和,则是定义一个变量sum。

sum=sum n!,同理也要放在for循环当中的。

sum = sumn;//阶乘求和

但显然,这道题目的关键难度并不在于对阶乘求和,因为这个是基础部分的内容了。

关键难度在于如何根据单链表来进行阶乘求和。

3、关于题目中给出的单链表结构体,我们就不细致展开了,题目中也给了就是存储结点数据的Data,和指向下一个结点的指针Next。

因为题目给出的是结构体,我们得来谈一谈一个符号,那就是箭头“->”符号的意思。

它叫做结构体成员运算符,就是使用一个指向结构体或对象的指针访问其内部成员。

通俗点来讲,以这道题目为例:L->Data,就是指向其中的内部元素Data数量。

那么很明确,这道题目的for循环就需要以这个Data为边界点。

就可以写为:

for(int i = 1;i<=L->Data;i){n = i*n;//n的阶乘}

那么在当前结点的数据处理完之后,就要转移到下一个结点,来处理下一个结点的数据。

则需要用到L->Next来表示了。

L = L -> Next;

最后返回sum的值即可。

注意:在完成上面这些事情的前提是L不为空,所以要加一个while循环语句:

while(L!=NULL)

我们来梳理一下这整道编程题目的逻辑关系。

代码实现

//求单链表结点的阶乘和#include <stdio.h>#include <stdlib.h>typedef struct Node *PtrToNode;struct Node {int Data; /* 存储结点数据 */PtrToNode Next; /* 指向下一个结点的指针 */};typedef PtrToNode List; /* 定义单链表类型 */int FactorialSum( List L );int main(){int N, i;List L, p;scanf("%d", &N);L = NULL;for ( i=0; i<N; i) {p = (List)malloc(sizeof(struct Node));scanf("%d", &p->Data);p->Next = L;L = p;}printf("%d\n", FactorialSum(L));return 0;}int FactorialSum( List L ){int sum = 0;int n = 1;//n的阶乘是从1开始的while(L!=NULL){for(int i = 1;i<=L->Data;i){n = i*n;//n的阶乘}sum = sumn;//求和n = 1;//为下一个结点做准备,重新赋值为1L = L -> Next;//指向下一个结点}return sum;}

结果测试总结

总的来说,这道题目关键还是对C语言的一个基本语法要有一个了解,我正是因为对基本语法没有一个清晰的了解,才导致做这道题目的时候比较困难,需要在网上查阅相关资料,然后再来解决这道题目。

    推荐阅读
  • 夏天开空调车底下漏水正常吗 开空调车底下会漏水嘛

    当空调制冷时,外界空气体中的水蒸气会在空调制的管壁上液化。如果不及时排出,会腐蚀空调制仪表盘内部的部件。冷凝水的流出过程空压缩机压缩制冷剂,然后通过阀门使其膨胀。汽车空调保养注意事项夏季首次使用空调节器时,应先检查空调节器系统。比如检查制冷剂液体和空调节器滤芯是否太脏,散热器内是否有异物通过储液罐。夏季高温下,车内外巨大的温差会导致空调节器系统发霉,进而滋生霉菌。因此,在所有者到达目的地之前,

  • 戒掉这三个习惯人有福(戒掉4个坏习惯练习4个好习惯)

    一个家庭里,女人是一个非常非常重要的角色。其实,对女人来讲,屈膝抖腿真的非常的不雅观,而且是一种不礼貌的行为。吃饭吧唧嘴不仅会对他人造成困扰,也会影响周围人对自己的看法,这真的是一件很尴尬又让人无法忍受的一种行为。而且,长期唉声叹气还会出现胸闷、气短、食欲不振、营养不良、贫血以及头晕等症状,从而不利于身心健康。所以女人一定要注意自己叹气的频率,平时少唉声叹气,多微笑。

  • 序幕的意思是什么(怎么理解序幕的意思)

    以下内容大家不妨参考一二希望能帮到您!序幕的意思是什么序幕,是汉语里的一个词语,指的是某些多幕剧置于第一幕之前的一场戏,通常交代人物的历史和人物之间的关系。后序幕一词又有了引申义,用来比喻重大事件的开端。范文澜《中国近代史》第三章第一节:“揭开这民主主义革命序幕的,就是马克思称为‘处于社会革新底前夜’的太平革命。”

  • wifi如何无缝桥接(WiFi范围扩大方法无线桥接)

    无线桥接不需要使用网线连接到主路由器上。如下图:2.接下来提示输入WiFi名称及密码保存设置,然后需要重新连接,如下图:3.此时也用于没有恢复出厂设置的路由器。可以来回走动测试是否不需要重新连接,一直有WiFi信号,受环境影响网速会受到影响。

  • 轮胎平衡块掉了要紧吗(轮胎平衡块掉了一块开车能感觉到吗)

    车辆轮胎更换的时间机动车轮胎的更换时间约为3年或4万公里左右。机动车的轮胎一定要定期更换,以免影响机动车的正常使用,这一点一定要注意。因为车辆轮胎是橡胶材质,使用一段时间后会出现老化磨损,容易出现问题。都是非法改装,到车站管理处或者公安机关交通管理部门办理登记手续。

  • 机械设计基础习题(机械设计基础习题)

    38蜗杆传动的主要失效形式有()、()和()等。

  • 没有冰箱怎么保存茶叶(茶叶在没有冰箱的情况下怎么保存)

    1、可以先找一个干净、无异味的牛皮袋,然后把茶叶倒进牛皮袋里,接着把空气全部排干,把袋口密封好,这样就能简单的保存茶叶,但保存的时间不长。

  • 重庆有哪些地方(重庆有什么地方)

    重庆有哪些地方重庆有21个市辖区。而主城四座大型的平行山岭,被简称为“四山”,包括缙云山、中梁山、铜锣山、明月山。主城区现有水系包括长江、嘉陵江,40条流域面积超过10平方公里的一级支流,2000余条二、三级支流,以及64处水库和3处湿地公园。重庆将以“四山”为主脉,鹅岭、照母山两条城市山脊线为次脉,包括40座最重要城中山体和其他一般丘陵在内的山系保护对象名录,制定管控措施,发挥其休闲游憩作用。

  • 初学古筝买多少价位古筝好(古筝初学选择什么价位的古筝好)

    如果仅是业余爱好或经济状况一般,则购买普及筝即可,但也要注意购买大品牌古筝,如敦煌古筝694dq双鹤朝阳、敦煌古筝694e高山流水。较为推荐的普及筝有:敦煌古筝694kk蕉窗夜语、敦煌古筝694TT天真元韵、月牙古筝05牵牛花、月牙古筝06山水知音、鼎韵古筝903、朱雀古筝520等。关于选购古筝方面,筝友应选择购买大品牌古筝,虽小作坊的古筝价格便宜,但那些古筝质量、音色、售后等方面都存在很多问题。

  • 吃什么促进新陈代谢(促进新陈代谢食物有哪些)

    橙子、柚子、柠檬和酸橙中含有的维C有助于加快脂肪的代谢速度,对减轻体重有益。美国加州斯克里普斯诊所的研究人员发现,参与者在每餐时吃半个柚子,12周后他们的平均体重减轻了1.63公斤。《美国饮食协会期刊》上的一项研究显示,食用谷物早餐的女性体重超重的可能性要低30%。瘦肉富含铁,因此平时注意多摄取牛肉、猪肉等瘦肉,促进新陈代谢。斯科特·伊萨克斯博士指出,每天的一餐饭中应加入一勺碎红辣椒。