C语言运行结果为什么会多出0或多个

2020-11-24 11:27:18 字数 5924 阅读 4523

1楼:齐天屁圣

我帮你改了一下,可以运行了,其中错误的地方我用/////////标注了,我想你最好画一个数**形来研究一下。

#include "stdio.h"

#define max 50

void setarray (int b[max], int m)void printarray(int b[max], int m)main()

///////////k=j+1;

k=j;

for(i=0;i<=p;i++)

///////////l=k+1;

l=k;

printarray(b,l);}

2楼:栁児

k=j+1;和l=k+1;这两句加1错了

k=j;

l=k;就对了

c语言 为什么运行结果d比f多一个0?

3楼:匿名用户

%f %d与变量名无关,%f表示对应的变量是一个float变量,%d表示对应的变量是一个int变量 。

%lf表示对应的变量是一个double变量

4楼:匿名用户

这是编译器得问题,换一个就有不同答案。。。

不用在意的。

5楼:匿名用户

23.000000,23.000000

请按任意键继续. . .

visual c++ 2008,微软最新的c++编译器,没有区别。

6楼:匿名用户

vc++ 6.0 没有问题,都是6个0

c语言中,算法为什么可以有零个或多个输入,却不能有零个或多个输出?

7楼:郁醉易衷懿

c语言算法可以有零个或多个输入,至少1个或多个输出。问题本身貌似有点问题。

首先这是因为官方这么说的。

然后,是个人观点:

算法如果可以自己跑起来那么没有输入没有问题啊。

但是如果没有输出,那么算法没有意义。得不出结果的算法没有实用性的。

个人认为算法就像是一个加工的过程,最终评判的是有没有结果。

另外查到:

算法的特性

:有限性

有限步骤之内正常结束,不能形成无穷循环。

确定性算法中的每一个步骤必须有确定含义,无二义性得以实现。输入有多个或0个输入输出

至少有一个或多个输出。

可行性原则上能精确进行,操作可通过已实现基本运算执行有限次而完成。

其实这里除了查到的个人见解居多,如果见解不当,希望指正,多谢了。

8楼:沉珂侧畔

c语言中的算法是指为解决某个特定问题而采取的确定且有限的步,主要的五个特性是:有穷性、确定性、可行性、有0个或多个输入、有一个或多个输出。

算法是指为解决某个特定问题而采取的确定且有限的步骤。

一个算法包含的操作步骤应该是有限的;

算法中每一条指令必须有确切的含义,不能有二义性,对于相同的输入必须能得到相同的执行结果;

算法中指定的操作,都可以通过已经验证过可以实现的基本运算执行有限次后实现;

在计算机上实现的算法是用来处理数据对象的,在大多数情况下这些数据对象需要通过输入来得到;

算法的目的是为了求解,这些解只有通过输出才能得到(注意:算法要有一个以上的输出)。

一个算法应该具有以下五个重要的特征:

1、有穷性(finiteness)

算法的有穷性是指算法必须能在执行有限个步骤之后终止。

2、确切性(definiteness)

算法的每一步骤必须有确切的定义。

3、输入项(input)

一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件。

4、输出项(output)

一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。

5、可行性(effectiveness)

算法中执行的任何计算步都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成。(也称之为有效性)。

c语言中,算法为什么可以有零个或多个输入,却不能有零个或多个输出呢

9楼:步虚真人

c语言算法可以有零个或多个输入,至少1个或多个输出。

问题本身貌似有点问题。

首先这是因为官方这么说的。

然后,是个人观点:

算法如果可以自己跑起来那么没有输入没有问题啊。

但是如果没有输出,那么算法没有意义。得不出结果的算法没有实用性的。

个人认为算法就像是一个加工的过程,最终评判的是有没有结果。

另外查到:

算法的特性 :

有限性 有限步骤之内正常结束,不能形成无穷循环。

确定性 算法中的每一个步骤必须有确定含义,无二义性得以实现。

输 入 有多个或0个输入

输 出 至少有一个或多个输出。

可行性 原则上能精确进行,操作可通过已实现基本运算执行有限次而完成。

其实这里除了查到的个人见解居多,如果见解不当,希望指正,多谢了。

10楼:匿名用户

产量还是不错的。

一、种子的选择,有些农户对种子的选择都是看表面,棵粒饱满漂亮,觉得这个什么号品种买回去种一定高产。其实并不是完全这样的,除了看表面棵粒之外还有两种:“保险”和“新鲜”这两种。

“保险”种,就是在当地拿来种植最少两年以上表现好的种子。“新鲜”种,就是在当地采收后没有种过,或者种植仅一年表现好的品种。还有选种时判别它的净度、纯度、水分、饱满度和籽粒均匀性等。

所以选种关键还是重要的。

二、整地起行距离,整地也是重要。在农村经常见的就是翻耕土地后放底肥直接播种,这个方法在农村一直都在用,玉米产量往往有低有高。所以整地时起行必须两小行合成一行,中间小行距离约15公分。

大行距离约50公分左右,为什么这么做呢?一来能促进玉米在通风透光的情况下生长,二是为了提高在玉米开花期授粉率。

三、播种,点播种子的时候先从起好行的两旁挖好穴,每个穴的距离为25公分左右,避免种植过密,每穴两棵种子。一般播种深度为3至5公分,土壤水分较少的可增加播种深度至4至6公分。然后培上土壤。

忌覆土不要过厚,深浅不一,以免种子缺氧会引起闷种死芽,出苗率低或者不均匀,导致日后玉米增产大大降低。

四、苗期施肥,苗期可以用氮磷钾,是为幼苗发育提供所需养分,促进苗期坚韧生长。 玉米追肥应根据土壤肥力、品种需肥特性、品种生育期等适量追肥,以满足玉米生长发育所需。一般来说,玉米幼苗时生长较慢,植株小,对氮的吸收量较少,可用1/3氮肥为宜。

施肥同时肥料与株根不要太近,约10公分即可。因为幼苗处于发育阶段,根部柔嫩,以免烧伤。施完肥料进行培土,将泥土挖成沟形,为了防止雨水浸泡,把肥料也用挖出泥土盖上。

五、玉米开花期到长穗期追肥,在农村常见的是在玉米开花期间进行施复合肥,这是其中之一,其实一般在定苗后至拔节前追肥,以每亩追肥尿素 3至5公斤,或碳铵10至15公斤,用“里贝里宴沃水溶肥”比较好。干旱地区要及时浇水,因为玉米抽雄开花期和籽粒形成期间生命活动旺盛,需水量较大。尤其是在玉米开花前15天至开花后15天的1个月左右时间内,对水分特别敏感。

若开花期干旱,小花发育不良,花粉和花丝生活力降低,授粉不好,败育小花增加;若灌浆期干旱,叶片早衰,光合能力降低,败育粒增加。

六、防虫防害,玉米抽穗期间注意防蝼蛄、粘虫,一般可用敌百虫液混水浇灌土壤。生长期注意防治玉米螟、粘虫、蚜虫等害虫。大喇叭口期防治螟虫和蚜虫,可用增效速灭杀丁液喷心叶; 5到7天1次,连喷2刮3次。

粘虫可用溴氰菊醋液喷雾。

为什么我编写的c语言程序运行时后面多了个0.000002?

11楼:匿名用户

我运行了,正常。

printf("%.2f \n %.2f",l,s); (.2) 表示显示到小数点2位。

12楼:网神

我已经在tc2.0里调试成功

并没有问题...

你要是想少要一点儿小数位,那么就改改printf就好了在f前面加 .*

星星就是小数位数

13楼:匿名用户

你可以在printf的时候限定一下打印的长度,如 printf("%2.4f\n%2.4f",l,s);毕竟float是浮点数,不可能精确地用二进制表示出3.14以及大部分小数的

如0.5可以表示成0.1(二进制)

而0.4就没有一个精确的二进制来表示了

14楼:匿名用户

字符是不是调用错了!

求助c语言,链表输出正确结果的前面为什么多了一个0?

15楼:匿名用户

看你的太麻烦 这是我以前做的 你看看 比你的那个要完善

# include < stdio.h >

# include < malloc.h >

# include < stdlib.h >

typedef struct node

node, * pnode;

pnode creste_lise( void ); //创建一个非循环单链表

void traverse_list( pnode phead1 ); //遍历

int main( void )

pnode creste_lise( void ) //创建一个非循环单链表

pnode wei_jiedian = tou_jiedian;

wei_jiedian ->pnext = null;

printf( "请输入需要生成的链表节点的个数:len = " );

scanf( "%d", &len );

for( i = 0; i < len; i++)

xin_jiedian ->data = val;

wei_jiedian ->pnext = xin_jiedian;

xin_jiedian ->pnext = null;

wei_jiedian = xin_jiedian;

}return tou_jiedian;

}void traverse_list( pnode phead1 ) //遍历

printf("\n");

return;

}自己看看吧 有帮助的

急求!哪位c语言前辈帮我看看啊 为什么运行后每一行都多了三个0?

16楼:匿名用户

scanf认为,也是一个有效的字符串数据,所以,你输入的所有的信息都写到了name里了!

这样改一下:

scanf("%s %f,%f,%f",stu[i].name,&stu[i].chinese,&stu[i].math,&stu[i].english);

字符串与数值数据间用空格分开,就好了

还有,你定义的数据中全是double,因此,在读数据时,严格来说应该改为用%lf。

即:scanf("%s %lf,%lf,%lf",stu[i].name,&stu[i].chinese,&stu[i].math,&stu[i].english);

17楼:匿名用户

猜测;double为双精度,应该是它起的作用,不购位数就用0填充

18楼:小浣和

把double型改成float型

19楼:心碎小飞鱼

应该是你的精确度有问题,结构体内定义的为双精度,而输入输出均为浮点型,将结构体内的精确度改为浮点型就没问题了。

c语言程序,为什么每一行输出最后一位会出现个0呢?

20楼:倒霉熊

printf("%2d\n");

修改为printf("\n"); ///%d是输出一个整数,而后面又没有输出的整数 所以输出为0 这里只是回车

c语言为什么要加,c语言 为什么要加一个'0'

1楼 做而论道 加 0 ,并不是转成 char。 而是为了转换成 ascii 码。 函数 f 是 char 类型,加不加 0 ,返回值,都是 char 型。 但是,不加 0 ,用 putchar 来显示,就不正常。 b 必须是ascii 码,这是 putchar 的需求。 2楼 育知同创教育 应为 ...

c语言中的0ul或1ul是什么意思

1楼 匿名用户 0ul 表示 无符号长整型 0 1ul 表示 无符号长整型 1 如果不写ul后缀,系统默认为 int 即,有符号整数。 1 数值常数有 整型常数 浮点常数 2 只有数值常数才有后缀说明 3 数值常数后缀不区分字母大小写。 1 整型常数的表示形式有 十进制形式 以0开头的八进制形式 以...

C语言输入两个整数和运算符号,输出结果前面为什么会有

1楼 匿名用户 有的时候会有零这个字符出现的, 但是有的时候, 会没有这个零出现的, 要看输入的字符是什么? 什么情况, 还有是什么环境下, 每个环境下, 情况是不一样的。 编程实现输入两个整数,输出对应的两个整数 这个怎么做啊 5 2楼 云南新华电脑学校 在php里 php a 20 echo g...