建材秒知道
登录
建材号 > 设计 > 正文

c语言程序设计的基本思想

平常的画笔
甜蜜的斑马
2023-01-25 11:38:52

c语言程序设计的基本思想

最佳答案
俊秀的小笼包
缥缈的唇彩
2026-05-10 01:47:08

模块化的思想

模块化程序的特点:单入口、单出口

基本的三种结构:顺序、分支(选择)、循环;

这三个基本结构来安排模块执行的步骤;

循环三要素:初值、条件、更新;

面对编程问题:三步走策略(输入+处理+输出);

编程思想:分而治之+变量跟踪+换位思考

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

最新回答
坚定的酒窝
帅气的咖啡
2026-05-10 01:47:08

设计思想:

结构化程序设计的总体思想是采用模块化结构,自上而下,逐步求精。即首先把一个复杂的大问题分解为若干相对独立的小问题。

然后,对每个小问题编写出一个功能上相对独立的程序块(模块)。最后将各程序块进行组装成为一个完整的程序。

方法原则:

1、只采用三种基本的程序控制结构来编制程序,从而使程序具有良好的结构;

2、程序设计自顶而下;

3、用结构化程序设计流程图来表示算法。

扩展资料:

设计方法

1、自顶向下

程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。

2、逐步细化

对复杂问题,应设计一些子目标作为过渡,逐步细化。

3、模块化

一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。

优缺点:

1、优点

由于模块相互独立,因此在设计其中一个模块时,不会受到其它模块的牵连,因而可将原来较为复杂的问题化简为一系列简单模块的设计。

模块的独立性还为扩充已有的系统、建立新系统带来了不少的方便,因为我们可以充分利用现有的模块作积木式的扩展。

2、缺点

用户要求难以在系统分析阶段准确定义,致使系统在交付使用时产生许多问题。用系统开发每个阶段的成果来进行控制,不能适应事物变化的要求。

参考资料来源:百度百科--结构化程序设计

贪玩的小伙
缓慢的世界
2026-05-10 01:47:08
一楼说的木有错,感觉没有个一两年的编程经验就先不要谈设计思想了,脱离实践的设计都是不实际的,其实设计思想的形成都是非常自然的事情。

当人们刚开始设计程序的时候,也许只要能写出来就好了

慢慢的,写的程序多了,发现有些代码可以不用反复写,反复粘贴复制,于是就有了重用的思想

后来,写的代码更多了,发现程序设计的思路好像有些共通的地方,于是就有了各种设计模式,直接可以用来套用

再后来,人们连代码都懒得写了,于是出现了很多开发框架,直接向框架里填东西就行了。

这个就和过去武功一样吧!

最初只有简单的招式,一拳一脚

后来打架打的多了,发现可以可以用一些连招

再后来招式都已经在心里,想出什么招就出什么招

再后来已经没有招式

最后发现可以不打架也能解决问题

编程,做人,做事,都是一样,只有不断地磨炼才行。没有多少捷径的~~

都说现在社会太浮躁,可能就是一上来就想练设计思想~~~呵呵

踏踏实实的编程,再加上自己的悟性,如果你适合干这行自然就能练成设计思想了~~~

祝你成功!!

昏睡的书本
诚心的书包
2026-05-10 01:47:08
C是一个结构化语言,如谭老爷子所说:它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 \x0d\x0a所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。 \x0d\x0a对语言本身而言,C是C++的子集,那么是什么样的一个子集?从上文可以看出, C实现了C++中过程化控制及其它相关功能,而在C++中的C(我称它为“C+”),相对于原来的C还有所加强,引入了重载、内联函数、异常处理等等玩艺儿,C++更是拓展了面向对象设计的内容,如类、继承、虚函数、模板和包容器类等等。 \x0d\x0a再提高一点,在C++中,数据封装、类型这些东东已不是什么新鲜事了,需要考虑的是诸如:对象粒度的选择、对象接口的设计和继承、组合与继承的使用等等问题。 \x0d\x0a所以相对于C,C++包含了更丰富的“设计”的概念,但C是C++的一个自洽子集,也具有强大的功能,同样值得学习。

聪明的西装
体贴的台灯
2026-05-10 01:47:08
C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。

C源程序的结构特点

1.一个C语言源程序可以由一个或多个源文件组成。

2.每个源文件可由一个或多个函数组成。

3.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。

4.源程序中可以有预处理命令(include

命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。

5.每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。

6.标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。

书写程序时应遵循的规则

从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时

应遵循以下规则:

1.一个说明或一个语句占一行。

2.用{}

括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。

3.低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。

爱撒娇的菠萝
感动的战斗机
2026-05-10 01:47:08
#include <stdio.h>

double sum(int n) {

int i

double sum = 0.0

for(i = 1i <= n++i)

sum += 1.0/(2*i - 1) + 1.0/(2*i)

return sum

}

int main() {

int n

printf("n = ") 

while(scanf("%d",&n) == 1) {

if(n > 0) printf("n = %d,sum = %12.8lf\n",n,sum(n))

}

return 0

}

刻苦的小天鹅
整齐的毛豆
2026-05-10 01:47:08

C.面向过程。面向过程是具体化的,流程化的。在C语言中,解决一个问题,需要一步一步分析需要怎样,然后需要怎样,一步一步实现的,所以C语言是面向过程的。

A,B选项中面向问题和面向用户,是为了易于定义和解决某些问题而设计的一类与机器无关的程序设计语言,只要给出问题的描述、输人数据和要完成的加工及输出形式,便能得到所要求的结果,这是一种对象模型,抽象模型。

扩展资料

C程序设计语言是面向过程的语言,也称为结构化程序设计语言,是高级语言的一种。在面向过程程序设计中,问题被看作一系列需要完成的任务,函数则用于完成这些任务,解决问题的焦点集中于函数。面向过程语言中每一条语句的书写格式都有着严格的规定。

参考资料:百度百科-C语言

阳光的白猫
闪闪的蜜粉
2026-05-10 01:47:08

就是编写一个函数啊

float fun(int n)

{

int i

float sum=0.0

for(i=1i<=ni+=2)

sum+=1.0/i

return sum

}

采纳哦,谢谢~

糊涂的玉米
现实的航空
2026-05-10 01:47:08
感觉以前的认识有很大问题,很严重影响到了自己,我是学计算机专业的,我总想找出一个可以长久学习的语言,在学校学过c语言,java之类的,当时php很火,但是毕业之后就不火了,java还是需求很多,所以我就在想java和web前端是否是经久不衰的(一个前端一个后端霸主),但是后来又发现一个问题,这只是代表现在流行,就像以前大学大部分都是学c语言,java都不教的,c#也不教,那以后十几年后的大学是否java也会被淘汰而被其他的高级语言所替代?一百年后呢?我以前喜欢php因为喜欢他的技术体系还有可以做出来的东西(网站之类的),但是后来淘汰了,我学了前端但是我依旧喜欢php导致我很迷茫。所以后来我也安慰自己把范围缩小到只喜欢具体某个语言(比如java,还是js,还是php之类,就不像以前喜欢到技术栈和作品),但最大的问题是还是面临喜欢的问题。假如你喜欢的技术淘汰了怎么办?喜欢的语言淘汰了怎么办?虽然以前也有老师说感兴趣的可能最后学得更好,那是因为当时所有编程语言都流行,所以你感兴趣哪个语言都没问题,但是就像现在有不少编程语言慢慢淘汰了,这时候你的感兴趣就会和市场就业所冲突,这时候你就会矛盾,迷茫。但也有老师说编程语言只是工具,我们要学会编程思想,面向金钱编程,不要去执迷于某个语言,语言只是工具,这样就不会造成说你感兴趣的万一淘汰了怎么办,而你这时候心态是变化的,所有技术你都可以学,你是用技术来解决问题的,而不像以前那样只限于某个技术无法自拔。当然这里说的是大部分普通人,有些人特别厉害,小众语言技术都能写得很厉害,也不用担心什么流行还是不流行,那些人就另说了。还有一些人是兴趣爱好也无所谓。但是大部分普通人还是要综合考虑,比如c语言这些比较难的也要考虑是否合适。(可能自己想太多,我再想如果以后孩子也学编程让他学什么语言?我大学的时候学得太散,没有专门主要学一门所以后悔,毕业后培训了web前端,也学了node,当时我在想如果大学也学了node会不会更轻松,对其他后台语言做课程设计也有帮助,但是我又发现大学培训web前端的似乎当时很多都教到jq就能工作了,node根本也没学到,所以不适合大学学直到工作。所以我又再想如果一直学java是不是更合适,但是我又发现也只是现在分析得合适,就像以前大学都没java这门课程,以后就算小孩读大学可能java也淘汰了,所以java也不适合,只是现在看现在很适合而已。所以说不要限制自己于某个语言技术,要以解决问题的眼光去学,想想如果当时就算只学一门或许也没什么用,因为感觉自己想太多有强迫症只限于一门语言,而排除其他语言技术这样很限制自己,很被动),而技术都在变的,流行的东西也在变,如果你只限于喜欢某个技术这样容错率就会很低,淘汰了怎么办,除非那些非常厉害的,不如大部分普通人还是要跟着公司和技术变化。所以说不要让自己只限于喜欢某个技术,要灵活点,这样最后就算丢弃了也没什么可惜的。你的技术是解决问题的,除非客户有指定什么技术,不然你做出来的东西客户只在乎好不好用,至于你是怎么实现的,用什么技术实现的客户也不在乎,或许也不懂,只要你做出来客户觉得好用适合就行了,所以不要总是纠结于喜欢什么技术,应该用喜欢的技术去解决什么的。当然啦,如果是你太讨厌的技术或者方向也没必要太强迫自己学了,除非公司一定要用那你就自己决定。当然也不是说不能什么都不喜欢,有些东西喜欢并不会影响你(比如以前得玩具,现在的电脑啊,汽车啊,喜欢怀旧,什么手动挡啊,自动挡啊什么的,并不会影响你太多,限制你太多),最多后面淘汰丢掉就行(虽然或许不舍)。不像技术,让喜欢限制得太死会让你迷茫,矛盾,影响自己。

大胆的黑裤
复杂的路灯
2026-05-10 01:47:08
什么是C语言?C语言的简介。

C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。

它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。

因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。

语言特点:C是中级语言/C是结构式语言/C语言功能齐全/C语言适用范围大/简洁紧凑、灵活方便/运算符丰富/数据类型丰富/C是结构式语言/语法限制不太严格,程序设计自由度大/适用范围大,可移植性好。