C语言程序设计现代方法(第二版)练习答案(自学)第三章

3.1

#include <stdio.h>
void main(){
	int mm=0;
	int dd=0;
	int yyyy=0;
	printf("Enter a date:");
	scanf_s("%d/%d/%d",&mm,&dd,&yyyy);
	getchar();
	printf("you entered the date:%.4d%.2d%.2d",yyyy,mm,dd);
	getchar();
}

3.2

#include <stdio.h>
void main(){
	int number=0,year=0,month=0,day=0;
	float price=0.0;
	printf("Enter item number:");
	scanf_s("%d",&number);
	getchar();
	printf("Enter unit price:");
	scanf_s("%f",&price);
	getchar;
	printf("Enter purchase date:");
	scanf_s("%d/%d/%d",&month,&day,&year);
	getchar();
	printf("Item\t\tunit\t\tpurchase\n");
	printf("\t\tprice\t\tdate\n");
	printf("%-d\t\t$%7.2f\t%-.2d/%-.2d/%-.4d\n",number,price,month,day,year);
	getchar();
}

3.3

#include <stdio.h>
void main(){
	int gp=0,gi=0,pc=0,in=0,cd=0;
	printf("Enter ISBN:");
	scanf_s("%d-%d-%d-%d-%d",&gp,&gi,&pc,&in,&cd);
	getchar();
	printf("\nGS1 prefix: %d\nGroup identifier: %d\npublisher code: %d\nItem number: %d\nCheck digit: %d\n",gp,gi,pc,in,cd);
	getchar();
}

3.4

#include <stdio.h>
void main(){
	int n1=0,n2=0,n3=0;
	printf("Enter phone number:");
	scanf_s("(%d)%d-%d",&n1,&n2,&n3);
	getchar();
	printf("%.3d.%.3d.%.4d",n1,n2,n3);
	getchar();
}

3.5

#include <stdio.h>
void main()
{
int num1 = 0, num2 = 0, num3 = 0, num4 = 0, num5 = 0, num6 = 0, num7 = 0, num8 = 0;
int num9 = 0, num10 = 0, num11 = 0, num12 = 0, num13 = 0, num14 = 0, num15 = 0, num16 = 0;
int row1 = 0, row2 = 0, row3 = 0, row4 = 0;
int col1 = 0, col2 = 0, col3 = 0, col4 = 0;
int dia1 = 0, dia2 = 0;
printf("Enter the numbers from 1 to 16 in any order: ");
scanf_s("%d%d%d%d%d%d%d%d", &num1, &num2, &num3, &num4, &num5, &num6, &num7, &num8);
getchar();
scanf_s("%d%d%d%d%d%d%d%d", &num9, &num10, &num11, &num12, &num13, &num14, &num15, &num16);
getchar();
printf("%2d\t%2d\t%2d\t%2d\t\n%2d\t%2d\t%2d\t%2d\t\n", num1, num2, num3, num4, num5, num6, num7, num8);
printf("%2d\t%2d\t%2d\t%2d\t\n%2d\t%2d\t%2d\t%2d\t\n\n\n", num9, num10, num11, num12, num13, num14, num15, num16);
row1 = num1 + num2 + num3 + num4;
row2 = num5 + num6 + num7 + num8;
row3 = num9 + num10 + num11 + num12;
row4 = num13 + num14 + num15 + num16;
col1 = num1 + num5 + num9 + num13;
col2 = num2 + num6 + num10 + num14;
col3 = num3 + num7 + num11 + num15;
col4 = num4 + num8 + num12 + num16;
dia1 = num1 + num6 + num11 + num16;
dia2 = num4 + num7 + num10 + num13;
printf("Row sums: %d  %d  %d  %d  \nColumn sums: %d  %d  %d  %d  \n", row1, row2, row3, row4, col1, col2, col3, col4);
printf("Diagonal sums: %d  %d  \n", dia1, dia2);
getchar();
}

3.6

 #include <stdio.h>
 void main()
 {
       int x1 = 0, y1 = 0, x2 = 0, y2 = 0;
       int result_num = 0, result_denom = 0;
       printf("Enter two fractions separated by a plus sign: ");
       scanf_s("%d/%d+%d/%d", &x1, &y1, &x2, &y2);
       getchar();
       result_num = x1 * y2 + x2 * y1;
       result_denom = y1 * y2;
       printf("The sum is: %d/%d\n", result_num, result_denom);
       getchar();
 }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值