二 填空题
1.下面程序的运行结果是 i:dec=-4,oct=17774,hex=ffffc,unsigned=65532 。
main()
{
short i;
i= -4;
printf(“\ni: dec=%d, oct=%o, hex=%x, unsigned=%u\n”, i, i, i, i);
}
2.若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是 5.0,4,c=3 。
int b,c; float a;
scanf("%f,%d,c=%d",&a,&b,&c);
3.下列程序的输出结果是16.00,请填空。
main()
{ int a=9, b=2;
float x= 6.6 , y=1.1,z;
z=a/2+b*x/y+1/2;(1/2=0,a/2=4)
printf("%5.2f\n", z );
}
4.在printf格式字符中,只能输出一个字符的格式字符是 %c ;用于输出字符串的格式字符是 %s ;以小数形式输出实数的格式字符是 %f ;以标准指数形式输出实数的格式字符是 %e 。
三 编程题
1. 若a=3, b=4, c=5, x=1.2, y=2.4, z= -3.6, u=51274, n=128765, c1=’a’, c2=’b’。想得到以下的输出格式和结果,请写出完整的程序(包括定义变量类型和设计输出)。
要求输出的结果如下:
a= <空格>3 <空格><空格> b= <空格> 4<空格><空格> c= <空格>5
x=1.200000, y=2.400000, z= -3.600000
x+y=<空格>3.60<空格><空格> y+z = -1.20<空格><空格>z+x= -2.40
u=<空格>51274<空格><空格>n=<空格><空格><空格>128756
c1= a <空格>or<空格>97(ASCII)
c2= B <空格>or<空格>98(ASCII)
2. 输入一个华氏温度,要求输出摄氏温度。公式为C=5/9(F-32)
输出要有文字说明,取2位小数。
3. 编程序,用getchar函数读入两个字符给c1、c2,然后分别用putchar函数和printf函数输出这两个字符。
三 编程题参考答案
1. 解:
main()
{
int a=3, b=4, c=5;
long int u=51274, n=128765;
float x=1.2, y=2.4, z= -3.6;
char c1=’a’, c2=’b’;
printf(“\n”);
printf(“a=%2d b=%2d c=%2d\n”,a,b,c);
printf(“x=%8.6f , y=%8.6f, c=%9.6f\n”,x,y,z) ;
printf(“x+y=%5.2f y+z=%5.2f z+x=%5.2f\n”,x+y,y+z,z+x) ;
printf(“u=%6ld n=%9ld\n”,u,n);
printf(“c1=%c or %d(ASCII)\n”,c1,c1);
printf(“c2=%c or %d(ASCII)\n”,c2,c2);
}
2. 解:
main()
{
float c, f;
printf(“请输入一个华氏温度:\n”);
scanf(“%f”,&f);
c=(5.0/9.0)*(f-32);
printf(“摄氏温度为:%.2f\n”,c) ;
}
3. 解:
#include
main()
{
char c1, c2;
printf(“请输入两个字符给c1和c2:\n”);
c1=getchar();
c2=getchar();
printf(“用putchar函数输出结果为:\n”) ;
putchar(c1);
putchar(c2);
printf(“\n用printf函数输出结果为:\n”) ;
printf(“%c, %c\n”,c1,c2) ;
}
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |