习题3

1、以下程序功能为输入圆锥的底面积和半径和高,求表面积和体积。请通过调试方法或编译方法去把错误代码修改正确。

 

#include <stdio.h>

#define PI 3.1415926

#include <math.h>

void main()

{ double r,h,s,v;

printf("Please input the radius:\n");

scanf("%63lf",&r);

printf("Please input the height:\n");

scanf("%63lf",&h);

s=PI*r*(r+pow(r*r+h*h,0.5));

v=PI*r*r*h;

printf("The area is %lf\nThe volumn is %lf\n",s,v);

}

 

 

2、以下程序中若输入9876543210则输出x1=98,x2=765,c1=4,c2=1;若输入98 76 543210则输出x1=98,x2=76,c1= ,c2=3;若输入987654 3210则输出x1=98,x2=765,c1=4,c2=2。请根据输入输出写出正确的scanf函数调用语句把程序补充完整。

 

#include <stdio.h>

void main()

{

int x1,x2;

char c1,c2;

scanf("%2d%3d%3c%c",&x1,&x2,&c1,&c2);

printf("x1=%d,x2=%d,c1=%c,c2=%c\n",x1,x2,c1,c2);

}

 

 

3、编程实现任意输入一个无符号的整数,分别以十进制、八进制、十六进制形式输出,且每个数字输出时都从各个制表区的第一个位置开始输出。

 

#include <stdio.h>

void main()

{

unsigned int x1;

scanf("%u",&x1);

printf("%u %o %x\n",x1,x1,x1);

}

 

4、编程实现任意输入一个小数,分别输出此小数的整数部分、小数部分以及保留2位小数的结果,并且这三个数用%隔开。

若输入的是56.889,则输出56%0.889000%56.89。

#include <stdio.h>

void main()

{

double x,b;

int a;

scanf("%lf",&x);

a=(int)x;

b=x-a;

printf("%d%%%f%%%.2f\n",a,b,x);

}

5、编程输入两个字符分别给变量c1和c2,要求不借助于其他变量的条件下,将变量c1和c2的值互换。

#include <stdio.h>

void main()

{

int c1,c2;

printf("请输入c1和c2的值:");

scanf("%d%d",&c1,&c2);

c1=c1+c2;

c2=c1-c2;

c1=c1-c2;

printf("c1=%d,c2=%d\n",c1,c2);

}

 

 

5、编程实现鸡兔同笼,已知笼中有头h个,有脚f条,问笼中鸡兔各有多少只?若头10,脚32,则鸡4只,兔6只。

#include <stdio.h>

void main()

{

int h,f,j,t;

printf("请输入头和腿的值:");

scanf("%d %d",&h,&f);

t=(f-(h*2))/2;

j=h-t;

printf("鸡=%d 兔=%d\n",j,t);

 

}

 

posted @ 2021-12-14 20:09  小耿想努力呀  阅读(51)  评论(0编辑  收藏  举报