C语言基础习题及答案3

第三章         顺序结构程序设计

一、选择题

1putchar ( )函数可以向终端输出一个________

A)整型变量表达式值      B)实型变量值

C)字符串                D)字符或字符型变量值

2.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为1020AB,当从第一列开始输入数据时,正确的数据输入方式是__________

int a1,a2; char c1,c2;

scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);

A 10A 20B                 B10 A 20 B

C10A20B                 C10A20 B

3、执行下列程序片段时输出结果是______

        int x=13,y=5;

        printf(“%d”,x%=(y/=2));

A3     B2     C1        D0

4、若定义xdouble型变量,则能正确输入x值的语句是________

Ascanf(“%f”,x);          Bscanf(“%f”,&x);

Cscanf(“%lf”,&x);        Dscanf(“%5.1f”,&x);

5.已知i,j,kint型变量,若从键盘输入:1,2,3<回车>,使I的值为1j的值为2k的值为3,以下选项中正确的输入语句是____

Ascanf(“---”,&i,&j,&k);

Bscanf(“%d_%d_%d”,&i,&j,&k);

Cscanf(“%d,%d,%d”,&i,&j,&k);

Dscanf(“i=%d,j=%d,k=%d”,&i,&j,&k);

6、有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量 a的值为1b的值为3c的值为2,则正确的数据输入方式是______

A132                  B1,3,2

Ca=1 b=3 c=2           Da=1,b=3,c=2

 

二、看程序写结果

1用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’,问在键盘上如何输入? (︼表示空格)

 main ( )

         {  int a,b;

             float x,y;

             char c1,c2;

             scanf(“a=%db=%d”,&a,&b);

             scanf(“ %f %e”,&x,&y);

             scanf(“ %c %c”,&c1,&c2);

        }

 

2#include

Main()

{int x=345;

 Printf(“m\nd\n%-6d\n-”,x,x,x,x);

}

 

三、填空题

1、输入两个实数a,b。然后交换它们的值,最后输出(提示:要交换两个数得借助一个中间变量temp.首先让temp存放a的值,然后把b存入a,再把temp存入b就完成了)

Main()

{float a,b,temp;

 Printf(“请输入ab的值:”)

 Scanf(“%d,%d”,________________)

 Temp=a;

____________________________

____  ______________________

Printf(“交换后,a=%d,b=%d\n”,_________________);

}

四、编程题

1、编程序:用getchar函数读入两个字符给c1,c2,然后分别用putcharprintf函数输出这两个字符。并思考以下问题:(1)变量c1,c2应定义为字符型或整型?或两者皆可?(2)要求输出C1C2值的ASCII码,应如何处理?用putchar函数还是printf函数?(3)整型变量与字符型变量是否在任何情况下都可以互相替代?如:

char c1,c2 int c1,c2

是否无条件地等价?

2设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积。用scanf输入数据,输出计算结果;输出时要求有文字说明,取小数点后2位数字,请编写程序。

 

参考答案

一、选择题

1D     2C      3C       4B      5C     6D

二、看程序写结果

1a=3b=7

   8.571.82

   Aa

2、︼︼︼345(右对齐,前补空格)

   000345   (右对齐,前补0

   345︼︼︼(左对齐,后补空格)

   345       (按原样输出)

三、填空题

&a,&b

a=b;

b=temp;

a,b

四、编程题

1#include

   Main()

   {char  C1,C2;

    C1=getchar();

C2=getchar();

Putchar(C1);

Putchar(C2);

Printf(“\n”);

Printf(“%c,%c\n”,C1,C2);}

运行结果:

请输入两个字符 C1,C2:

AB

putchar语句输出结果为:

   AB

  printf语句输出结果为:

   A,B

 回答思考问题:

C1C2可以定义为字符型或整型,二者皆可。

printf函数中用%d格式符输出。即printf(“%d,%d\n”,C1,C2);

字符变量在计算机内占一个字节,而整型变量占两个字节,因此整型变量在可输出字符的范围内(ASCII码为0-255之间的字符)是可以与字符数据互相转换的。如果整数在此范围外,则不能代替。

1、  main()

{float pi,h,r,l,s,sq,vq,vz;

  Pi=3.141526;

  Scanf(“%f,%f”,&r,&h);

  I=2*pi*r;

  S=r*r*pi;

  Sq=4*pi*r*r;

  Vq=3.0/4.0*pi*r*r*r;

  Vz=pi*r*r*h;

  Printf(“i=%6.2f\n”,i);

Printf(“i=%6.2f\n”,s);

Printf(“i=%6.2f\n”sq);

Printf(“i=%6.2f\n”,vq);

Printf(“i=%6.2f\n”,vz);

 

 

你可能感兴趣的:(《计算机科学与技术》)