您的位置:首页 > 编程语言 > C语言/C++

C语言程序设计-现代方法----示例及练习题----第三章--格式化输入输出

2009-12-16 02:02 1236 查看
作者: selfimpr

博客: http://blog.csdn.net/lgg201

邮箱: lgg860911@yahoo.com.cn

C语言程序设计----示例及练习题----第二章--格式化输入输出

声明: 部分示例代码为书中源代码.其他原创代码多数对原题要求有所改动.







page 31:

#include <stdio.h>

int main() {
   int i, j;
   float x, y;

   i = 10;
   j = 20;
   x = 334554343.2892;
   y = 5527.0;

   printf("i = %d, j = %d, x = %.2g, y = %f/n", i, j, x, y);

   return 0;
}




page34:

#include <stdio.h>

int main() {
   int a = 0, b = 0;
   float c = 0.0, d = 0.0;
   scanf("%d%d%f%f", &a, &b, &c, &d);
   printf("a = %d/nb = %d/nc = %f/nd = %f", a, b, c, d);
   return 0;
}




练习2: 编写printf函数调用下列格式来显示float型变量x:

a) 指数表示形式: 最小为8的字段宽度内左对齐; 小数点后保留1位数字.

b) 指数表示形式: 最小为10的字段宽度内右对齐; 小数点后保留6位数字

c) 定点十进制表示形式: 最小为8的字段宽度内左对齐; 小数点后保留3位数字

d) 定点十进制表示形式: 最小为6的字段宽度内右对齐; 小数点后无数字.

#include <stdio.h>

int main() {
   float x = 345.678;

   printf("%-8.1e/n", x);
   printf("%10e/n", x);
   printf("%-8.3f/n", x);
   printf("%6.0f", x);

   return 0;
}




练习4: 编写一个程序, 接收用户录入的日期信息并且将其显示出来. 其中, 输入日期的形式为月/日/年(mm/dd/yy), 输出日期的形式为年月日(yymmdd), 格式如下:

Enter a date (mm/dd/yy): 2/17/96

You entered the date 960217

#include <stdio.h>

int main() {
   printf("Enter a date (mm/dd/yy): ");
   
   int year = 0, month = 0, day = 0;
   
   scanf("%d/%d/%d", &month, &day, &year);

   printf("You entered the date %02d%02d%02d", year, month, day);

   return 0;
}




练习5: 编写一个程序, 对用户录入的产品信息进行格式化, 程序运行后需要有以下会话:

Enter item number: 583

Enter unit price: 13.5

Enter purchase date(mm/dd/yy): 10/24/95

Item Unit Price Purchase Date

583 $ 13.50 10/24/95

其中, 数字项和日期项左对齐, 单位价格右对齐, 美元数量最大取值为9999.99

#include <stdio.h>

int main() {
   int number = 0;
   float price = 0;
   int year = 0;
   int month = 0;
   int day = 0;

   printf("Enter item number: ");
   scanf("%d", &number);
   printf("Enter unit price: ");
   scanf("%f", &price);
   printf("Enter purchase date (mm/dd/yy): ");
   scanf("%d/%d/%d", &month, &day, &year);

   printf("Item	     Unit     Purchase/n");
   printf("%-9d$ %-9.2f%02d%02d%02d", number, price, month, day, year);

   return 0;
}




练习6: 图书用国际标准图书编号进行标识, 如0-393-30375-6.编号中的第一个数字说明编写书籍所用的语言(例如, 0表示英语, 3表示德语). 接下来的一组数字表示出版社. 随后的数字是出版社定的用来识别图书. 最后, 结尾的数字是校验数字, 用来验证前面数字的准确性. 编写一个程序来分解用户录入的ISBN信息: 格式如下:

Enter ISBN: 0-393-30375-6

Language: 0

Publisher: 393

Book Number: 30375

Check digit: 6

#include <stdio.h>

int main() {
   int language, publisher, booknumber, checkdigit;
   
   printf("please enter the ISBN: ");
   scanf("%d-%d-%d-%d", &language, &publisher, &booknumber, &checkdigit);

   printf("Language: %d/nPublisher: %d/nBook Number: %d/nCheck digit: %d", 
	 language, publisher, booknumber, checkdigit);

   return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: