C Primer Plus 练习 P85
来源:互联网 发布:动态网页制作python 编辑:程序博客网 时间:2024/05/17 01:45
1、编写一个程序,要求输入名字和姓氏,然后以“名字,姓氏”的格式打印。
#include<stdio.h>
int main(void)
{
char surname[20],firstname[20];
printf("Please input your firstname and surname:");
scanf("%s",firstname);
scanf("%s",surname);
printf("You are %s,%s.\n",firstname,surname);
return(0);
}
2、编写一个程序,要求输入名字,并执行以下操作:
a.把名字引在双引号中打印出来。
b.在宽度为20个字符的字段内打印名字,并且整个字段引在引号内。
c. 在宽度为20个字符的字段的左端打印名字,并且整个字段引在引号内。
d.在比名字宽3个字符的字段内打印它。
#include<stdio.h>
#include<string.h>
int main(void)
{
char name[20];
int width;
printf("Please input your name:");
scanf("%s",name);
printf("A:\"%s\"\n",name);
printf("B:\"%20s\"\n",name);
printf("C:\"%-20s\"\n",name);
width=strlen(name)+3;
printf("D:\"%*s\"\n",width,name);//*对应width
return(0);
}
3、编写一个程序,读取一个浮点数,并且首先以小数点记数法,然后以指数记数法打印之。输出使用下列形式(在指数位置显示的数字的位数可能会随系统而不同):
a. The input is 21.3 or 2.1e+001.
b. The input is +21.290 or 2.129E+001.
#include<stdio.h>
int main(void)
{
float a;
printf("Please input a float:");
scanf("%f",&a);
printf("a.The input is %.1f or %.1e\n",a,a);
printf("b.The input is %+.3f or %.3E\n",a,a);
return(0);
}
4、编写—个程序,要求输入身高(以英寸为单位)和名字,然后以如下形式显示:
Dabney, you are 6.208 feet tall
使用float类型,使用/作为除号。如果您愿意,可以要求以厘米为单位输入身高,并以米为单位进行显示。
#include<stdio.h>
int main(void)
{
float height;
char name[20];
printf("Please input your height by inches:");
scanf("%f",&height);
Printf("Please input your name:");
scanf("%s",name);
printf("%s,you are %f feet tall\n",name,height/12);
return(0);
}
5、编写一个程序,首先要求用户输入名字,然后要求用户输入姓氏。在一行打印输入的姓名,在下行打印每个名字中字母的个数。把字母个数与相应名字的结尾对齐,如下所示:
Melissa Honeybee
7 8
然后打印相同的信息,但是字母个数与相应单词的开始对齐。
#include<stdio.h>
#include<string.h>
int main(void)
{
char surname[20],firstname[20];
printf("Please input your firstname and surname:");
scanf("%s",firstname);
scanf("%s",surname);
printf("%s %s.\n",firstname,surname);
printf("%*d %*d\n",strlen(firstname),strlen(firstname),strlen(surname),strlen(surname));
printf("%s %s.\n",firstname,surname);
printf("%-*d %-*d\n",strlen(firstname),strlen(firstname),strlen(surname),strlen(surname));
return(0);
}
6、编写一个程序,设置一个值为1.0/3.0的double类型变量和一个值为1.0/3.0的float类型变量。每个变量的值显示三次:一次在小数点右侧显示4个数字,一次在小数点右侧显示12个数字,另一次在小数点右侧显示16个数字。同时要让程序包括float.h文件,并显示FLT—DIG和DBL_DIG的值。1.0/3.0的显示值与这些值一致吗?
#include<stdio.h>
#include<float.h>
int main(void)
{
double a=1.0/3.0;
float b=1.0/3.0;
printf("double a=1.0/3.0:\n");
printf("%.4e\n",a);
printf("%.12e\n",a);
printf("%.16e\n\n",a);
printf("float b=1.0/3.0:\n");
printf("%.4f\n",b);
printf("%.12f\n",b);
printf("%.16f\n\n",b);
printf("FLT_DIG:%d\n",FLT_DIG);
printf("DBL_DIG:%d\n",DBL_DIG);
return(0);
}
7、编写一个程序,要求用户输入行驶的英里数和消耗汽油的加仑数。接着应该计算和显示消耗每加仑汽油行驶的英里数,显示方式是在小数点右侧显示一个数字。然后,根据l加仑约等于3.785升,l英里约等于1.609公里的规则,它应该把每加仑英里数转换成每100公里的升数(欧洲通用的燃料消耗表示法),并显示结果,显示方式是在小数点右侧显示一个数字(请注意,美国方案测量每单位距离消耗的燃料数,而欧洲方案测量每单位燃料的行驶距离)。用符号常量表示两个转换系数(使用const或#define)。
#include<stdio.h>
#define GALLON 3.785 //1 gallon = 2.785 litre
#define MILE 1.609 //1 mile = 1.609 kilometer
int main(void)
{
float mile,gallon;
printf("Please input miles and gallons:");
scanf("%f %f",&mile,&gallon);
printf("Miles per gallon:%.1f\n",mile/gallon);
printf("Litres per 100 kilometre:%.1f\n",gallon*GALLON/(100*mile*MILE));
return(0);
}
- C Primer Plus 练习 P85
- 【C++】primer plus 练习7.1
- 【C++】primer plus 练习7.2
- 【C++】primer plus 练习7.3
- 【C++】primer plus 练习7.5
- 【C++】primer plus 练习8.1
- C Primer Plus 练习p31
- C Primer Plus 练习 P59
- c primer plus 练习一
- C Primer Plus 练习6-1
- C Primer Plus 练习 6-2
- C Primer Plus 练习 6-3
- C Primer Plus 练习 6-4
- C Primer Plus 练习 6-5
- C Primer Plus 练习 6-6
- C Primer Plus 练习 6-9
- C Primer Plus 练习 6-10
- C Primer Plus 练习 6-11
- tempalte.js例子
- 使用sed、awk命令生成.java或.yaml文件所需语句
- 初学HTML用法大全指导(一)html对文本的设置
- Crashing Robots(POJ 2632)(模拟)
- JAVA 16方格排序游戏
- C Primer Plus 练习 P85
- 关于list集合
- PHP微信支付开发之扫描支付(模式二)后如何回调
- 第三章 装饰者模式
- win8.1重装后修复ubuntu引导
- 笔记软件
- nginx源码学习(一)
- 安装auto-fu.zsh让命令输入自动补全
- 用递归判断一个数组是否是递增数组