C语言程序设计实验课参考答案(实验三:输入输出格式及控制)

实验三 输入输出格式及控制

1. 输出表达式的值

说明

输出表达式1234∗5678的结果。

输入输出格式及样例

输入数据:无

输出数据:1234 * 5678 = 7006652

注意输出的空格!

参考答案

1
2
3
4
5
#include<stdio.h>
int main(){
printf("1234 * 5678 = %d", 1234*5678);
return 0;
}

2.量身高

说明

输入一个整数n,表示身高,程序会输出一句英文,”My height is ncm.”,其中n代指输入的数字。例如:输入180,输出是“My height is 180cm.”。

测试说明

输入描述:输入一个整数 n。n的范围在int类型内。

175

输出描述:输出”My height is ncm.”

My height is 175cm.

参考答案

1
2
3
4
5
6
7
#include<stdio.h>
int main(){
int a;
scanf("%d", &a);
printf("My height is %dcm.", a);
return 0;
}

3.01子串

说明

对于长度为 3 位的一个 0、1串,每一位都可能是 0 或 1,一共有 8 种可能。它们的前几个是:

1
2
3
4
000
001
010
……

请按从小到大的顺序输出这 8 种 01 串。

输入输出格式及样例

输入数据:无

输出数据:输出 8 行,按从小到大的顺序每行一个长度为 3 的 01 串。

1
2
3
4
5
6
7
8
000
001
010
011
100
101
110
111

参考答案

1
2
3
4
5
6
7
8
9
10
11
12
//三个位置都是0或1,通过三重循环来输出,
#include<stdio.h>
int main(){
for(int a=0; a<=1; a++){
for(int b=0; b<=1; b++){
for(int c=0; c<=1; c++){
printf("%d%d%d\n", a, b, c);
}
}
}
return 0;
}

4. 套盒子

说明

小明同学有很多大、中、小三种类型的盒子,分开放太占空间,他想把这些盒子套在一起,那样看起来更加整洁。但是他突然忘记他自己一共有多少个盒子了。他只记得:
一共有 a 个大盒子,每个大盒子里面有 b 个中盒子,每个中盒子里面有 c 个小盒子。
现在他想知道自己一共有多少个盒子。

输入输出格式及样例

输入数据:入仅有一行,三个整数 a,b,c(1≤a,b,c≤1000)。

1 1 1

输出数据:输出一行一个整数,代表一共有多少个盒子。

3

参考答案

1
2
3
4
5
6
7
#include<stdio.h>
int main(){
int a, b, c;
scanf("%d%d%d", &a, &b, &c);
printf("%d", a + a*b + a*b*c);
return 0;
}

5.保留3位小数

说明

读入一个浮点数,保留 3 位小数输出这个浮点数。

输入输出格式及样例

输入数据:只有一行,一个浮点数 x(−105≤x≤105)。

12.34521

输出数据:也只有一行,保留3位小数的浮点数。

12.345

参考答案

1
2
3
4
5
6
7
#include<stdio.h>
int main (){
double x;
scanf("%lf", &x);
printf("%.3f", x);
return 0;
}

6. 人民币支付

说明

给定一个金额(以元为单位,如 345),现在想知道支付该金额的各种面额的人民币数量,显示 100 元,50 元,20 元,10 元,5 元,1 元各多少张,要求尽量使用大面额的钞票。

输入输出格式及样例

输入数据:一个小于 1000 的正整数。

735

输出数据:输出分行,每行显示一个整数,从上到下分别表示 100 元,50 元,20元,10 元,5 元,1 元人民币的张数。

1
2
3
4
5
6
7
0
1
1
1
0

参考答案

1
2
3
4
5
6
7
8
9
10
11
//使用了 数组 和 循环
#include<stdio.h>
int main(){
int x, money[]={100, 50, 20, 10, 5, 1};
scanf("%d", &x);
for(int i=0; i<6; i++){
printf("%d\n", x / money[i]);
x = x % money[i];
}
return 0;
}

7. 计算球的体积

说明

球是一种很常见的模型,我们都知道它的体积计算公式:对于半径为 r的球,其体积的计算公式为 V=4/3×π×r^3 ,这里取π=acos(-1)。

现给定 r,求 V。

输入输出格式及样例

输入数据:输入为一个不超过 100的非负实数,即球半径。

4

输出数据:输出一个实数,即球的体积,保留到小数点后 2 位。

268.08

参考答案

1
2
3
4
5
6
7
8
9
#include<stdio.h>
#include<math.h>
void main()
{
double r, v;
scanf("%lf", &r);
v = 4/3.0*pow(r,3)*acos(-1);
printf("%.2f", v);
}

8. 输出一句话

说明

小飞刚开始学习 C++ 编程,他想练习一下输出语句,但是被下面的一句话难住了,怎么也数不出来,你能帮帮他吗?

输入输出格式及样例

输入数据:无

输出数据:严格按要求输出内容。"C:\abc" is 3% of "D:\abc"

4

提示

需要考虑使用转义符 \,在 printf 语句里,输入与输出的对应关系如下:

1
2
3
\"→"
\\→\
%%→%

参考答案

1
2
3
4
5
//把需要输出的内容放到printf里,对需要转义的字符加上转义符’\‘就可以了
#include<stdio.h>
void main(){
printf("\"C:\\abc\" is 3%% of \"D:\\abc\"");
}