C语言程序设计学习-习题3

一、选择题

1. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出时( B )。
A.从左起输出该字符串,右补空格
B.按原字符长从左向右全部输出
C.右对齐输出该字符串,左补空格
D.输出错误信息
2.已有定义“int a=-2; ”和输出语句“printf(“%8x”,a);”,以下正确的叙述是( D )。
A.整形变量的输出格式符只有%d一种
B.%x是格式符的一种,它可以适用于任何一种类型的数据
C.%x是格式符的一种,其变量的值按十六进制输出,但%8x是错误的
D.%8x不是错误的格式符,其中数字8规定了输出字段的宽度
注意:为进一步理解题目用意,请执行以下程序,并分析结果:
#include
void main()
{
int a=22;
printf("%8x\n",a);
}
3.已有如下定义和输出语句。
int a1,a2;
char c1,c2;
scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);
若要求a1、a2、c1、c2的值分别为10、20、A、B,当从第一列开始输入数据时,正确的数据输入方式是( A )。

A.10A20B B.10 A 20 B
C.10 A20 D.10A20 B
4.已有定义“int x; float y;”且执行“scanf(“%3d%f”,&x,&y);”语句,若从第一列开始输入数据12345678,则x的值为( B )。
A.12345 B.123 C.45 D.345

二、填空题

  1. C语言用_printf_函数能够完成精确的输出格式;
  2. 执行语句“printf(“%d,%d”,i,j,k,m);”后,将在屏幕上输出**_2**_个整数;
  3. 格式说明符_**%d_或_%i_**可用来输出有符号的十进制整数;
  4. 所有的字符串都以_‘\0’_字符结束;
  5. C语言用_scanf_函数能够完成精确的格式化输入;
  6. 格式说明符_**%lf_**表示显示一个double类型的数据值;
  7. -或减号 标志使输出在域宽内左对齐;
  8. scanf函数的转换说明符中可用 域宽 表示要从输入流中读取指定个数的字符或数字;
  9. +或加号 标志显示带有加号或减号的值
  10. 用花括号组合在一起的多条语句称为 复合语句

三、写出下列程序的运行结果

1

#include<stdio.h>
void main()
{
     
putchar(getchar()-32);
}

若运行时从键盘输入小写字母a,写出输出结果。
运行结果为A

2.

#include<stdio.h>
void main()
{
     
int i=-2;
float x=457.898;
printf("i=%5d,%o,%3x,%u,%c\n",i,i,i,i,i+'E');
printf("x=%10f,%10.2f,%-10.4f,%.2f,%f\n",x,x,x,x,x);
}

说明:在VisualC++6.0的开发环境中,int型数据默认为32位二进制数
运行结果为:
i=-2,37777777776,fffffffe,4294967294,C
x=457.898010,457.90,457.8980,457.90,457.898010

四、程序填空题

1. 输入一个3位整数,将它反向输出。例如,输出“127”,输出应为“721”。

#include<stdio.h>
int main()
{
     
int a,b;
printf("输入一个3位数");
scanf("%d",  &a  );
b=(a%10)*100+(a/10%10)*10+ a/100 ;
printf("反序为:%d\n",b);
}

2. 下面的程序是求y= 的值,按四舍五入保留6位小数输出

#include<stdio.h>
#include<math.h>
void main()
{
     
doublex,y;
printf(“输入x=);
scanf(%lf”,&x);
y= sqrt (log(  ));
printf(“y=%  0.6lf  \n”,y);
}

五、编写程序

1. 从键盘输入一个小写字母,输出其对应的大写字母。例如,输入“a”,输出字母“A”

#include<stdio.h>
void main()
{
     
char c;
scanf(%c”,&c);
c=c-32;
printf(%c\n”,c);
}

2. 已知三角形的三条边,求该三角形的面积。例如,三角形的边长为a、b、c,则面积
,其中

#include<stdio.h>
#include<math.h>
int main()
{
     
float a,b,c,s,l;
printf("输入三角形的三条边a,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
l=(a+b+c)/2;
s= sqrt(l*(l-a)*(l-b)*(l-c));
printf("三角形的面积=%f\n",s);
}

C语言程序设计学习-习题3_第1张图片

你可能感兴趣的:(程序设计,c语言)