4个C语言编程问题..懒的分开发啦..给满分啦、
发布网友
发布时间:2022-05-10 14:39
我来回答
共5个回答
热心网友
时间:2023-10-12 02:32
一、
1、这段编码很合适的啊。
for(i=1;i<=100;i++)
当执行的时候,第一个表达式i=1只在循环开始的时候执行一次。
2、对头,i=2时,不执行i=1的. i=1已经被加到sum里面去了。
3、for语句的执行过程
for(表达式1;表达式2;表达式3)
{
循环体;
}
执行过程是:
先执行 表达式1
然后判断 表达式2,如果表达式2成立,则执行循环体,否则退出循环
最后,执行 表达式3,然后判断 表达式2,这样就循环起来了
4、肯不出你这样写,更上面的写法有什么区别!
for(i=1;i<=100;i++)
{ sum+=i;}
5.for语句和while语句的区别,本质上没啥区别,可以相互替代的。
二、
1、不嵌套的if语句
if(x<0 && x>-5)
y=x;
if(x=0)
y=x-1;
if(x>0 && x<10)
y=x+1;
2、嵌套的if语句
if(x<10)
{
if(x>0)
y=x+1;
if(x=0)
y=x;
if(x<0 && x>-5)
y=x-1;
}
3,if-else语句
if(x<0 && x>-5)
y=x;
else if(x=0)
y=x-1;
else if(x>0 && x<10)
y=x+1;
4、switch语句
switch(x)
{
case 0:
y=x;
break;
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
y=x+1;
break;
case -1:
case -2:
case -3:
case -4:
y=x-1;
break;
}
三、逻辑非(!),比如
int a;
!a
用中文怎么读作 非a
逻辑运算的结果,就两个值:0或者1
当a=0的时候,!a的值就是1
当a=1的时候,!a的值就是0
四、
___
int a b c
a-b&c
这个表达式的值为1的情况,太多了。
b&c,是按位与运算,有一边为0,其结果就是0。
热心网友
时间:2023-10-12 02:33
我想你是想知道 for 的具体用法吧??
for ( A; B; C)
{
D;
}
//(ABCD 都是合法的语句)
的执行过程是这样的 A B D C B D C B D C B D C B(如果B真就一直执行下去)否则就不执行了;A只执行一次,每次循环都要判断B,都要执行 D C;
所以 没有不合适的地方,也没有把 1 忽略;
4是不是这样表示循环体恰当些啊..
for(i=1;i<=100;i++)
{ sum+=i;}
这样是最合适的 ,提倡这样写,这样些容系看懂,但原题也 是对的;
5:
你这样问我岂不是还要把while 的用法告诉你 ???
while(A)
{
B;
}
执行过程是这样 的 ABABABABABA(若A为真就接着执行)慢慢体会吧;
问题二 :
你 是想要4个程序;很麻烦的;
问题三:
C语言规定 任何 不是 0 的数字都为 “真”;
!a 读做 非a;
当a等于0时 !a等于1;否则 !a 等于0;就这样 的;
逻辑符号有 and“&&” 或"||" 非“!” 三个
你的 & 是位运算符,这题很麻烦的,初学者机不要讨论这个,当你明白机器内吗的时候再讨论;
如果是 a-b&&c 我可以告诉你 b&&c 只要都不是 0 那么 就等于1;
b=2 c=3 a=2 满足值为1
就这样。
看你不懂的太多了 多看看书吧,
热心网友
时间:2023-10-12 02:33
1请问这段编码是不是有不合适的地方啊。。 没有
for(i=1;i<=100;i++)
当执行的时候每次都要计算第一个表达式吗?? 是
2还有.i=1;..;i++
这时i=2.
再去计算sum+=2..??不就把1忽略了吗>> 但是已经把i=1的情况计算过了
3顺便请教下.for语句的执行过程是??
如果形式为(a;b;c)d;
先执行a,判断b是否成立,若不成立,则结束循环;若成立则执行d,然后再执行c,进入下一次循环
4是不是这样表示循环体恰当些啊.. 因为就一条语句,两种是一样的,如果是多条语句,就得加{}
for(i=1;i<=100;i++)
{ sum+=i;}
5.for语句和while语句的区别是什么 都差不多,for的功能比较强,能用while的都能用for实现
{ x (-5<x<0)
y={ x-1 (x=0)
{ x+1 (0<x<10)
编写程序.要求输入X的值..输出y的值,分别用
1,不潜逃的if语句
2,潜逃的if语句
3,if-else语句
4,wiitch语句..
#include<stdio.h>
main()
{
int x,y=0,i;
printf("input x:");
scanf("%d",&x);
/*不潜逃的if语句*/
if(x>-5&&x<0)y=x;
if(x==0)y=x-1;
if(x<10&&x>0)y=x=1;
/*潜逃的if语句*/
if(x==0)y=x-1;
if(x!=0)
{
if(x>-5&&x<0)y=x;
if(x<10&&x>0)y=x=1;
}
/*if-else语句*/
}
热心网友
时间:2023-10-12 02:34
1请问这段编码是不是有不合适的地方啊。。
for(i=1;i<=100;i++)
当执行的时候每次都要计算第一个表达式吗??
是的,每次执行sum+=i;
------------------------------------
2还有.i=1;..;i++
这时i=2.
再去计算sum+=2..??不就把1忽略了吗>>
不是你所说的这个程序先执行i=1,然后sum+=i; 当每次的循环结束后才执行一次i++,而且i=1只是开头将循环时赋值一次,以后的循环就不会执行.
-------------------------------------
3顺便请教下.for语句的执行过程是??
例如
for(第一表达式;第二表达式;第三表达式_
{
循环表达式;
}
先执行第一表达式,,*然后执行第二表达式判断是否循环,如要循环,再入循环表达式,,当循环结束到 } 时 执行第三表达式*,然后继续*....*这个过程.
===================================
5.for语句和while语句的区别是什么
没什么区别,大家可以互用.
for比较直观,while用起来比较自由;
=============================
热心网友
时间:2023-10-12 02:34
1.
的确不合适,但是没有语法错误
for(i=1;i<=100;i++)
i=1只执行一次
2.
什么意思,看不懂
3.
for(x;y;z){s;}
<=>
x;
redo:
if(y)
{
s;
z;
goto redo;
}
4.
一样
5.
没有大区别
1,不潜逃的if语句
if(x>-5&&x<0) y=x;
else if(x==0) y=x-1;
else if(x>0&&x<10) y=x+1;
else printf("error!");
2,潜逃的if语句
if(x>-5&&x<0) return x;
if(x==0) return x-1;
if(x>0&&x<10) return x+1;
printf("error!");
3,if-else语句
if(x)
{
if(x>-5&&x<0) y=x;
if(x>0&&x<10) y=x+1;
else printf("error!");
}
else y=x-1;
4,switch语句
switch(x)
{
case 0: y=x-1;break;
case is>-5&&is<0: y=x;break;
case is>0&&is<10: y=x+1;break;
}
!
非,否定
b&c
&;合取
两边都非0表达式的结果才为1