c语言中,下面程序的运行结果是?

作者&投稿:绽顷 (若有异议请与网页底部的电邮联系)
C语言中.下面程序的运行结果是~

这是一个错误的程序,指针p不能改变字符串的内容

如果是printf("%d
",strlen(p)); 则输出5

2和0。自加和自减在后面都是完成当前语句才会执行。
do
while
和while
一个是先做再判定,一个是先判定再做。
求给最佳啊。。。

你好
1.程序的运行结果是:1,-2
2.解释每一步的运行过程:
#include <stdio.h>
void main()
{
int y, a ;
y=2, a=1;
while (y--!=-1)
{
do{
a*=y ;
a++ ;
} while(y--);
}
printf("%d,%d\n",a,y);
}

从y=2,a=1开始哈
(首先我们要知道后自减y--型的返回值是y自减前的值 例如y=2 y--就返回2)

进入while循环
y--返回2 不等于-1 (此时y=1)
于是循环继续进入do while循环
执行a*=y;a++后
a=2 y=1

y--返回1 是非零 于是do while循环继续进行 (此时y=0)

执行a*=y;a++后
a=1 y=0

y--返回0 于是do while循环终止 (此时y=-1)

再判断while的循环条件: y--返回-1 于是while循环终止 此时y=-2

(讲的比较多 希望楼主能理解了)

2和0。自加和自减在后面都是完成当前语句才会执行。
do while 和while 一个是先做再判定,一个是先判定再做。

求给最佳啊。。。

2,0…若是不懂自增自减运算,请继续追问,我会发一个文件给你,关于自增自减的


C语言题目 1.下面程序的运行结果是( )
其中有不少小的错误,作为程序它是不能运行的。include<stdio.h>int main( ){ int y=2,a=1;while(y--!=-1){ do{a *=y; a++;} while(y--); }printf("%d,%d",a,y);return 0;}运行后的输出是:1,-2 分析运行过程:y=2,a=1;判断,为真,y变为1 进入do循环:a=1*1=1;...

c语言输出下面程序中的计算结果:
while(i<=___) 这里填50 i每次自增2,填50刚好循环25次 ..sum+=1\/___ 这里填 (float)i 类型不同会发生隐式转换牺牲精度 ..所以使用z(float)i,把int强制转换成float。int main(){ int i=2;float sum=1.0;while(i<=50){ bai sum+=1\/(float)i;i+=2;} printf("sum=%f\\n",...

c语言:下面程序的功能是:模拟加法和减法程序。请改正程序中的错误,并调...
如上图改三个地方

C语言求大神指点! 下面程序的运行结果:请问为什么选D?求解析【】表示空...
这是因为,char a[7];是局部变量,主函数在调用fun(p);时,只是把NULL复制(传递)给*s,在调用期间对变量s的更改不会对main()内的变量生效;而且char a[7];是局部变量,只在调用fun()函数期间存在,调用结束后即由系统回收,不复存在。所以调用后p所指的地址仍是NULL,不能正确输出的。

请问C#语言中,下面这段程序的输出结果是什么:
FALSEEquals 返回 false 再转大写

一道C语言题:当运行时输入:abcd$abcde↙,下面程序的运行结果是?
注意两种差异,前者putchar()输出后才做判断,所以会输出$符号,后者不会。

C语言 请问下面程序中,fun是什么意思
fun()是自定义的函数,在main函数中执行到fun(7,3,a)的时候调用外部的fun函数 ,fun里面的7,3,a这三个参数分别传给x,y,z 求出z的值后返回z的值,也可以这样写 fun (int x, int y, int z){ z=x * x + y * y;return z;} main(){ int a=38;fun(7,3,a);printf(“%d”,...

C语言 程序填空
C语言 程序填空 悬赏分:0 - 离问题结束还有 14 天 22 小时 1.下面程序的功能是将十进制整数转换成二进制 ,请在___上填写正确内容 main(){ int k=0,n,j,num[15];printf("Enter data that will be converted\\n");scanf("%d",&n);do { k++;num[k]=n%2;n=n\/2;} while(n!=...

C语言指出并修正下面程序的函数定义或调用中的错误
int a;...f(a);...} int f(x)此处也应该声明类型。{...} 事实上,对于(1)问,有的编译器不会报错,如TC(如果没有声明函数类型,TC会自动将函数认为是int型).(2)main(){ int a;...f(a);...} f(x)float x;如果想定义一个全局变量,应该把x放在函数外定义;{...} 如果想...

下面的C语言程序中,调用函数怎么写就可以将一个字符串数组作为实参_百 ...
字符串数组不能作为实参,子函数想要使用调用函数中的字符串可以将字符串所在内存的地址传递过去就可以了(数组名,或者指针)

井陉矿区18213522001: c语言中,下面程序的运行结果是? -
镇冯理舒: 你好 1.程序的运行结果是:1,-2 2.解释每一步的运行过程: #include void main() { int y, a ; y=2, a=1; while (y--!=-1) { do{ a*=y ; a++ ; } while(y--); } printf("%d,%d\n",a,y); } 从y=2,a=1开始哈 (首先我们要知道后自减y--型的返回值是y自减前的值 例...

井陉矿区18213522001: C语言,下面程序运行的结果是 -
镇冯理舒: a<b<c你理解错了,在c语言里不能这样用的,只能写成a<b && b<c,a<b<c在c语言里的真正意思是(a<b)<c,而(a<b)给出的结果是真(1)或假(0),所以其实a<b<c就是1或者0跟c比较.第一次比较,a<b得1(也就是说a<b是真),1比c(=2)小,执行程序,使得a=2,b=1,c=1 第二次比较,a<b得0(也就是说a<b是假),0比c(=1)小,执行程序,使得a=1,b=2,c=0 第三次比较,a<b得1(也就是说a<b是真),1比c(=0)大,不执行程序,所以最后的结果还是a=1,b=2,c=0

井陉矿区18213522001: c语言中,下面程序运行的结果是什么? -
镇冯理舒: 输入2时,输出66 输入3时,输出77 输入4时,输出8 输入5时,输出88 输入6时,输出9 输入其他数字或字母时,无输出,键入时,结束程序./*2345666778889 Press any key to continue*/

井陉矿区18213522001: c语言.下面程序运行的结果是 - -----------.求过程 -
镇冯理舒: 感觉你程序写错了.void abc(char *P) {while(*P) {*p+=2,*p++;}//*p=*p+2,将所有字符ascii码值+2;*p++,单目运算符结合性从右向左,先算p++//即指针向高位移动一位,然后再算*p(算完没存,没有意义,所以这里可以将*p++前的*去掉) } main() {char str[5]=”abcd”; abe(str); //应该是abc(str);你函数名写错了 printf(”%S”,str); } 这样程序输出结果应该就是cdef了.另外注意所有标点请用英文半角

井陉矿区18213522001: C语言.第六章作业第六章作业一选择题.1、下面程序段的运行结果是 . int n=0;while (n++A. 2 B. 3 C. 4 D. 有语法错误2、对for(表达式1; ;表达式3)可... -
镇冯理舒:[答案] 一 :1B 2C 3C 4C 5C 二 :1T 2F 3F 4F 5F 三 :1、25 2真 四 :1 【1】 【2】 2 【1】i解析看不懂?免费查看同类题视频解析查看解答

井陉矿区18213522001: 在C语言中,下面程序的执行结果是 ( ) -
镇冯理舒: a+=SUM(i+j)/SUM(i+j); 相当于 a=a+SUM(i+j)/SUM(i+j);=a+i+j*i+j+2/i+j*i+j+2=2+1+1*1+1+2/1+1*1+1+2=2+1+1+1+2+1+1+2=11

井陉矿区18213522001: c语言,以下程序的执行结果是?
镇冯理舒: 运行结果:266 266的16进制是:0x010A x.c[0]=10; 的16进制是0x0A x.c[1]=1;的16进制是0x01 楼主,应该看出来它们的关系了吧? __________________ |__x.c[0]__|__x.c[1]__| 如上图,按char排放 当按int排放的时候, x.c[1]是低字节,x.c[0]是高字节

井陉矿区18213522001: C语言中,下面程序段的运行结果是? -
镇冯理舒: while (a<b<c) 从左至右运算 1<2 所以 a<b的结果为0 0<2 所以(a<b) < c的结果为1 故a b 交换 c减一 选D

井陉矿区18213522001: c语言题目下面程序的运行结果是 -
镇冯理舒: #include main() {int a=11,b=10,c=0; a/=b+(b&&c); printf("%d\n ",a);} 我运行过了,是1选b

井陉矿区18213522001: c语言问题 下面程序的运行结果是 **. -
镇冯理舒: main() { int x; x= __2__; do { printf( "*" ) ; x-- ;} __while______ (x!=0 ) ;}

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