C语言:写出程序运行结果并解释为什么

作者&投稿:佼京 (若有异议请与网页底部的电邮联系)
~ #include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c;
float d=15,e,f;
a=35%7; //余数是0 ,所以a是0
b=15/10; //整数除法不要小数部分,所以 b是1
c=b++; //后置++做完之后 c是 1 ,b是2
e=15/10; //虽然e是浮点数,但是赋值在后,所以e是1.0,不是1.5
f=d/10; //因为d是浮点数,所以做了实数除法,所以f是 1.5
printf("%d,%d,%d,%f,%f,%f",a,b,c,d,e,f);
return 0;
}
因此结果是:0,2,1,15.0, 1.0,1.5

a=0
b=1,15、10都是整型数,相除的话,只取整数部分,即1.5就取1,然后赋值给b
c=2
e=1,同b,因为除出来的结果是1,赋值给double也是1。。
f=1.5,因为d是double型的,除以10得到的是double型1.5,赋值给f就是1、5了
精度问题你自己实验一下吧。。。

结果如图:
float
d=
15;浮点d
=
15.000000
a
=
0
:
35
取余
7
等于0
b
=
15/10
:15整除10等于1
c
=
b++
:
这句b++后加,所以c
=
1,b
=
2;
e
=
15/10
:因为15

10都是整数,15/10整除后结果为1,强转为浮点数1.000000
f
=
d/10
因为d为15.000000
除以10浮点除法f
=
1.5000000


c语言写出程序运行结果
x = 5 y = 4

如何运行C语言编写的程序?
1、编辑:编写代码,制作C语言的源文件。2、编译:是由编译程序将C语言源文件转换成二进制中间文件,对文件内部的语法语义做处理,如果编译出错,无法进行后续动作。3、链接:将编译中生成的中间文件组合成二进制可执知行文件,这一步会对文件之间的关联做检查,如果出错,将不会生成可执行文件,也就无法...

C语言中一个程序写完后怎么运行啊?
当编写完一个程序后,需要首先进行编译,然后再运行。如下图所示,程序编写完毕后,点击工具栏中的Execute,选择compile(编译)。如果没有错误,再选择Execute,选择run(运行)。

《C语言》写出下面程序的运行结果.
先是调用 inv这个函数,这个函数的作用就是把数组a里面的数据倒序排列,然后数组倒序后数组a的数据,也就是输出 0 11 9 7 3

一个C语言题目 请写出执行过程和输出结果 给出简要功能描述 ?_百度知...
每插入一个元素,先把它放入a[0]中,然后将前一位大于a[0]的数依次后移一位(把a[j]放入a[j+1]中,然后j--),直到前一位a[j]不大于a[0]时,再将a[0]放到a[j+1]中。如此这般的操作,直到最后一个元素为止。所以,程序运行后的输出是:1 2 3 4 5 6 7 8 9 10 ...

如何用c语言写出下面程序?
循环: 可用整型循环变量进行控制,每次循环,循环变量都有不同取值,第几次循环取值几是可以实现的,循环次数可控,每次循环打印图案一行,这个图案需要打印6行,因此控制循环6次,每次循环,循环变量取值顺序是0,1,2,3,4,5 在循环体中,利用循环变量的取值n输出n个字母,n等于上述循环变量取值加1...

写出C语言程序运行后的输出结果
include <stdio.h> struct stu { int a,b;char *ch;};void f1(struct stu parm);main(){ struct stu arg;arg.a=2000;arg.b=200;arg->ch="abcd";\/\/ch没有分配空间,是野指针,很容易出错你要么先malloc要么别定义 \/\/指针直接定义一个数组 f1(arg);\/\/传参数只是把arg复制了一份传给...

C语言:写出下列程序运行结果
s数组中的字符串字符个数有8个,还有最后一个空字符(双引号的字符常量后面自动跟着空字符)。空字符的ASCII值为0.所以第一个for的循环次数为字符个数。即循环8次。分别对应12134211 第一次:case 1. i=0. v[0]++; \/\/第一次循环完修改了第一个元素值。v={1,0,0,0} 同理 12134211...

在计算机上运行一个C语言编写的程序,要经过怎样的处理过程
开发一个C语言程序需要经过的四个步骤:编辑、编译、连接、运行。C语言程序可以使用在任意架构的处理器上,只要那种架构的处理器具有对应的C语言编译器和库,然后将C源代码编译、连接成目标二进制文件之后即可运行。1、编辑:输入源程序并保存(。C文件)。2、编译:将源程序翻译成目标文件(。OBJ文件)...

c语言写出程序运行结果
除了第3个代码没问题外,另外几个都一堆编译错误,我晕,改了半天 1.运行结果 :i=10 bl.i=10 i=6 dl.i=5 2.运行结果 CExample Constructor2 value=2 CExample Destructor 3.运行结果 i=0,k=2 i=0,k=2 4.运行结果 A constructing 1 B constructing 2 C constructing 3 D ...

郾城县19236931345: C语言:写出程序运行结果并解释为什么 -
荆茗可必: f=330-256;////char 一位范围0-255 330 溢出,等价于d=330-256; #include #include int main() {char f,e;f=330-256;////char 一位范围0-255 330 溢出,等价于d=330-256;e='\141';//'\141'就是 97int a='\141'-97;//要是相等则输出为0printf("%d ,%c,%d",a,f,e);return 0; }

郾城县19236931345: C语言 读程序 运行结果是什么,并请写出原因 谢谢!!! -
荆茗可必: 楼上讲的输出结果有错 正确输出结果 8, I amstudent!8的后面有个逗号 strlen计算字符串的实际长度,包括标点符号及空格, 但不包括'\0'串结束符strcat(s1,s2); 代表把字符串s2接到s1后面

郾城县19236931345: 请高手解释{C语言}程序运行结果, -
荆茗可必: 呵呵,当然不会有影响了,因为是值传递,也就是说f(a,b)的调用是把变量a的值和b的值的副本传弟给函数f的参数x和y,因此在f中对参数x和y的修改不会影响到变量a和b的值.正确的方法应是void f(int *x, int *y){int t; if(*x<*y){t=*x; *x=*y; *y=t;}} 在main中的调用方法为f(&a, &b); 改成引用传递 就可以了,因为指针是指针内存中的地址的,因此对指针所指向的内存中地址的值的更改,会影响到变量a和b的值.

郾城县19236931345: C语言运行结果,求详尽解释
荆茗可必: c=0,所以if(c)后的 x=3不会执行,执行的是x=4.

郾城县19236931345: c语言程序写出程序运行结果 -
荆茗可必: 你的程序有两个错误: 1、main函数前面要加上void 2、system("pause");system函数包含于头文件cstdlib中,在你的头文件中加入这个头文件#include<cstdlib>即可. 运行结果为下图:

郾城县19236931345: c语言 读下列程序,写出程序的输出结果 希望有详细解析 -
荆茗可必: 输出结果为:max value is 36 因为主程序内的双重循环,对数组的每个元素都乘以3并放回原处.输出语句则调用函数,求取这个二维 数组中的最大值,所以函数返回值是36

郾城县19236931345: C语言求程序运行结果,最好解释下了,谢谢! -
荆茗可必: str[i]>str[j]表示str[i]的ascii码比str[j]的ascii码大,从ascii表中可知,排在后面的字母(如z)比前面(如a)的大,小写的字母比大写的大,大小写字母都比' '(空格)大.开始时,str[i]是'o',str[j]是'G',然后,循环开始:循环第一次:由于'o'比'G'大...

郾城县19236931345: 有以下C语言程序,程序的输出结果是什么?请写出详细的执行过程. -
荆茗可必: 你的程序写错了,return(fib(n-1)+fib(n-2)忘记了一个),改为return(fib(n-1)+fib(n-2)),程序就没错误了. 程序的运行结果为:16 代码解释如下: fib()函数是个递归函数,实现如下功能:当参数n>2时,将n赋值为n-1,和n-2返回,直到n<=2停止,像主函数里面的fib(6),先返回fib(5)+fib(4);然后继续执行fib()函数,fib(4)+fib(3)+fib(3)+2;然后继续执行fib()函数返回【fib(3)+2】+【2+2】+【2+2】+2,然后继续执行fib()函数返回:{【2+2】+2}+【2+2】+【2+2】+2,然后结束将结果输出.

郾城县19236931345: C语言:写出程序的输出结果.(烦请详细地解释一下代码,万分感谢~) -
荆茗可必: 程序错误太多,改正后应该是: 结果: ________******* //i=0,p(8,'_');p(7,'*');printf("\n");_________***** //i=1,p(9,'_');p(5, '*');printf("\n"); __________*** //i=2,p(10,'_');p(3,'*');printf("\n"); ___________* //i=3,p(11,'_');p(1,'*');printf("\n"); p的意思是打印a个b字符

郾城县19236931345: C语言:写出下列程序运行结果 -
荆茗可必: s数组中的字符串字符个数有8个,还有最后一个空字符(双引号的字符常量后面自动跟着空字符).空字符的ASCII值为0.所以第一个for的循环次数为字符个数.即循环8次.分别对应12134211 第一次:case 1. i=0. v[0]++; //第一次循环完修改了第一个元素值.v={1,0,0,0} 同理12134211 对应修改v数组中的第K个元素,即修改第一个元素4次.第二个2次等等 所以 v={4,2,1,1}; 总的来说s数组中出现 1~4的各个数 控制v数组 对应1~4个元素的值 最后输出v数组中的所有元素.也就是4211

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网