|
发表于 2022-6-25 08:21:00
|
显示全部楼层
本帖最后由 顶级太阳 于 2022-6-25 15:31 编辑
测试题:
0、 下面代码将打印多个个A?
理解为i=0的时候,j循环10次,打印10次A,然后第二次i=1的循环时,这时候由于j=0,停止循环。所以一共打印10次A
上机验证为10次。
1、 下面代码会打印多少个B:
i从0开始进入循环,判断i大于10停止,共计11次循环,当i=11时,经过跳转语句退出循环。应该打印11个B
但是上机验证结果打印B次数为0.不知道为什么
2、 表达式a=b=c=5的运算顺序为c=5,b=5,a=5.所以它的lvalue应该为a
3、 表达式a=(b=3,4,c=b++ +5,++c + ++);执行顺序为:b=3, b=4,c=4+5=9,c=10,b=5,c=15,然后的a=(3,4,10,17),不会算了。。。。。。此时,b=5,c=15,a不懂了
4、 用条件运算符计算变量x的绝对值,存放在变量z中:z=x>=0?x;-x
5A.
if(size>12)
{
cost=cost*1.05;
flag=2;
}
else bill=cost*flag;
5B.
if(ibex>14)sheds=3;
sheds=2;
help=2*sheds;
5C.
while(score!=’\n’)
scanf(“%d”,&score);
if(score<0) printf(“count=%d\n”,count);
count++;
动动手:
0、 单利和复利比较:#include<stdio.h>
int main()
{
float xjy=10000,hy=10000;
int i=0;
while (hy<=xjy)
{
xjy=xjy+10000*0.1;
hy*=1.05;
i++;
}
printf("%d年后,黑夜的投资额超过小甲鱼!\n",i);
printf("小甲鱼的投资额是:%.2f\n",xjy);
printf("黑夜的投资额是:%.2f\n",hy);
return 0;
}
1、#include<stdio.h>
int i=0;
int main()
{
float money=400;
while(money>=0)
{
money=(money-50)*1.08;
i++;
}
printf("%d年之后,小甲鱼败光了所有的家产,再次回到一贫如洗。。。。\n",i);
return 0;
}
2、#include<stdio.h>
int i=(-1);
float pai, jie=1.0,j=1.0;//这里jie=1.0并不参与计算,只是为了能够第一次进入循环
int main()
{
while (jie>=0.00000001)
{
j=j+2.0;
jie=(float)1.0/j;
pai=1+i*jie;
printf("%f ",pai);
i=-i;
}
printf("π约值为%.7f\n",4*pai);
return 0;
}
3、#include<stdio.h>
int month,i=1,j=0,k=0,j_0=0,k0=0;//month计算月份,i能生育的老兔子,j不能生育的兔子,k本月新生兔子,j_0为上月不能生育兔子,k0为上月新生兔子。
//计算规则:不能生育的兔子j下月可以生育(数量加入老兔子i),本月新生兔子k下月不能生育j,1对老兔子每月生育1对新生兔子k=i。
int main() //经过学友提示,我这个程序是新生兔子2个月不能生育。新表对应下面。
{
for(month=1;month<=24;month++)
{
//计算本月兔子数量
j=k0;
k=i;
i+=j_0;
j_0=j;
k0=k;
printf("第%d月,老兔子i=%d,不能生育兔子%d,小兔子%d.\n",month,i,j,k);
}
printf("两年之后存在的兔子数量:%d\n",i+j+k);
return 0;
}
正确对应题目的表格:
|
|