C Primer Plus 第三章编程练习

第三章(课后答案)

第一题

自己测试即可

第二题

/*******************************************************************/
/***题    目:编写一个程序,要求提示输入一个ASCII码值(如,66),    ***/
/***          然后打印输入的字符。                                ***/
/***完成时间:2020.1.31                                          ***/
/***作    者:林夕                                               ***/
/******************************************************************/
#include<stdio.h>
int main(void)
{
	int ASCII=0;

	printf("请输入一个ASCII码值:\n");
	scanf_s("%d", &ASCII);
	printf("ASCII码值为%d对应的字符为%c", ASCII, ASCII);

	return 0;
}

运行结果
在这里插入图片描述

第三题

/**************************************************************/
/***题    目:编写一个程序,发出一声报警,然后打印下面文本:    ***/
/***          Startled by the sudden sound, Sally shouted, ***/
/***          "By the Great Pumpkin, what was that!"       ***/
/***完成时间:2020.1.31                                    ***/
/***作    者:林夕                                         ***/
/************************************************************/
#include<stdio.h>
int main(void)
{
	printf("\a");//蜂鸣声
	printf("Startled by the sudden sound, Sally shouted,\n");
	printf("\"By the Great Pumpkin, what was that!\"");//\"-输出"

	return 0;
}

运行结果
在这里插入图片描述

第四题

/*************************************************************/
/***题    目:编写一个程序,读取一个浮点型,先打印成小数点形式,***/
/***          在打印成指数形式。然后,如果系统支持,在打印成p记 ***/
/***          数法(即十六进制计数法),按以下格式输出(实际显示***/
/***          的指数位数因系统而异):                        ***/
/***          Enter a floatinf-point value:64.25            ***/
/***          fixed-point notation:64.2500000                ***/
/***          exponential notation:6.425000e+01              ***/
/***          p notation:0x1.01p+6                           ***/
/***完成实际:2020.1.31                                        ***/
/***作    者:林夕                                             ***/
/****************************************************************/
#include<stdio.h>
int main(void)
{
	float number=0;
	printf("Enter a floatinf-point value:");
	scanf_s("%f", &number);
	printf("fixed-point notation:%f\n", number);
	printf("exponential notation:%e\n",number);
	printf("p notation:%.2a\n",number);
}

运行结果
在这里插入图片描述

第五题

/**************************************************************/
/***题    目:一年大约有3.156*10^7秒。编写一个程序,提示用户输入***/
/***          年龄,然后显示该年龄对应的秒数。                 ***/
/***完成时间:2020.1.31                                      ***/
/***作    者:林夕                                           ***/
/**************************************************************/
#include<stdio.h>
#define YEAR  3.156e7
int main(void)
{
	long double sum=0;
	int age;

	printf("请输入您的年龄:\n");
	scanf_s("%d", &age);
	sum = age * YEAR;
	printf("相当于%e秒", age * YEAR);

	return 0;

}

运行结果
在这里插入图片描述

第六题

/*******************************************************************/
/***题    目:1一个水分子质量约3.0*10^-23克。1夸脱水大约950克。编写 ***/
/***          一个程序,提示用户输入水的夸脱水数,并显示水分子的数量***/
/***完成时间:2020.1.31                                         ***/
/***作    者:林夕                                              ***/
/******************************************************************/
#include<stdio.h>
#define SINGLE1 3.0e-23
#define SINGLE2 950

int main(void)
{
	int number = 0;
	long double sum = 0;

	printf("请输入水的夸脱水数量:");
	scanf_s("%d", &number);
	sum = number * SINGLE2 / SINGLE1;
	printf("则水分子的数量为%e", sum);

	return 0;
}

运行结果
在这里插入图片描述

第七题

/***************************************************************/
/***题    目:1英寸相当于2.54厘米,编写一个程序,提示用户输入身高***/
/***          (/英寸),然后以厘米为单位显示身高。            ***/
/***完成时间:2020.1.31                                      ***/
/***作    者:林夕                                           ***/
/**************************************************************/
#include<stdio.h>
#define RATE 2.54
int main(void)
{
	float number=0;

	printf("请输入你的身高(英寸):\n");
	scanf_s("%f", &number);
	printf("则你的身高为%.2f厘米!\n", number * RATE);

	return 0;
}

运行结果
在这里插入图片描述

第八题

/*******************************************************************/
/***题    目:在美国的体积测量系统,1品脱等于2杯,1杯等于8盎司, ***/
/***          1盎司等于2大汤勺,一大汤勺等于3茶勺。编写一个程序,***/
/***          提示用户输入杯数、盎司、汤勺、茶勺为单位显示等价容 ***/
/***          量。思考对于该程序,如何使用浮点类型比整数类型更合 ***/
/***          适?                                           ***/
/***完成时间:2020.1.31                                      ***/
/***作    者:林夕                                           ***/
/**************************************************************/
#include<stdio.h>
#define RATE1 2
#define RATE2 8
#define RATE3 3
int main(void)
{
	float tea_spoon = 0, soup_ladle = 0, ounse = 0, cup = 0, pint = 0;
	//tea_spoon-茶勺 soup_ladle-汤勺 ounse-盎司 cup-杯 pint-品脱

	printf("请依次输入以杯数、盎司、汤勺、茶勺为单位的值(用空格隔开):\n");
	scanf_s("%f %f %f %f", &cup, &ounse, &soup_ladle, &tea_spoon);
	soup_ladle += tea_spoon / RATE3;
	//等价于soup_ladle = tea_spoon / RATE3+soup_ladle
	ounse += soup_ladle / RATE1;
	cup += ounse / RATE2;
	pint += cup / RATE1;
	printf("等价于%.3f个脱品\n", pint);
	
	return 0;
}

运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林夕07

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值