1,若有“char c=1025;printf("%d",c);”结果为?
答案为 1
为什么呢?越详细越好!
为什么char型的1025既没有单引号又没有双引号,不是字符型也不是字 符串型的,输出为什么用“%d”,答案1又是哪来的?
2,编写程序,输入两个双精度的数,求它们的平均值,要求小数点后保留两位小数,第三位小数四舍五入
答案 #include<stdio.h>
main()
{
double f1,f2,avg;
scanf("%lf,%lf",&f1,&f2);
avg=(f1+f2)/2;
printf("avg=%3.2lf\n",avg);
}
%3.2lf 的含义是什么?可以实现保留两位小数,并对第三位实现四舍五入吗?
3,邮寄包裹,以每1KG为一个记费单位,每个邮包最多10KG,低于1KG的按一个记费单位算,每件邮包的手续费为3元,从A到B的邮寄费是3元/KG
#include<stdio.h>
main()
{
float postage;
float weight;
scanf("%f",&weight);
if(weight>10)
printf(wrong!);
postage=(int)weight*3.0+3.0;
printf("postage=%f",postage);
}
(int)weight是对重量进行取整处理,但是题目中的不足1KG按最小单位记费怎么办呢?应该怎么把那部分的费用算出来,或者这个答案为什么是对的?
4.执行下面的程序后a b k 的值分别为?
int a=0,b=0,k=0;
for(;a<=5;a++)
if(a%2)
for(;b<=3;b++)
k=a+b;
答案为6.4.4为什么?
5.执行下面程序的输出结果为?
#include<stdio.h>
main()
{
int x=0,y=5,z=3;
while(z-->0&&++x<5)
y=y-1;
printf("%d,%d,%d\n",x,y,z);
}
答案是什么?为什么?
谢谢帮忙!