顺序程序设计习题

假如我国国民生产总值的年增长率为9%,计算十年后我国国民生产总值与现在相比增长多少百分比

计算公式:p = (1 + r)n  (r 为增长率, n 为年数, p 为与现在相比的倍数)


//假如我国国民生产总值的年增长率为9%,计算十年后我国国民生产总值与现在相比增长多少百分比
//计算公式:p = (1 + r) ^ n  (r 为增长率, n 为年数, p 为与现在相比的倍数)

#include <stdio.h>
#include <math.h>

int main(void)
{
	double r = 0.09;
	int n = 10;

	printf("p = %f\n", pow(1 + r, n));

	return 0;
}

运行结果:

存款利息的计算。有1000元,想存5年,可以按以下5种方法存

  1. 一次存5年期
  2. 先存2年期,到期后将本息再存3年期
  3. 先存3年期,到期后将本息再存2年期
  4. 存1年期,到期后将本息再存1一年期,连续存5次
  5. 存活期存款。活期利息每一季度结算一次

2007年12月的银行存款利息如下:

  • 1年期定期存款利息为4.14%
  • 2年期定期存款利息为4.68%
  • 3年期定期存款利息为5.4%
  • 5年期定期存款利息为5.58%
  • 活期存款利息为0.72%(活期存款每一季度结算一次利息)

如果 r 为年利率,n 为存款年数,则计算本息和公式为

  • 1年期本息和:P = 1000 * (1 + r)
  • n年期本息和:P = 1000 * (1 + n * r)
  • 存 n 次1年期的本息和:P = 1000 * (1 + r)n
  • 活期存款本息和:P = 1000 * (1 + r / 4)4n        1000 * (1 + r / 4)是一个季度的本息和

/*
存款利息的计算。有1000元,想存5年,可以按以下5种方法存

一次存5年期
先存2年期,到期后将本息再存3年期
先存3年期,到期后将本息再存2年期
存1年期,到期后将本息再存1一年期,连续存5次
存活期存款。活期利息每一季度结算一次

2007年12月的银行存款利息如下:

1年期定期存款利息为4.14 %
2年期定期存款利息为4.68 %
3年期定期存款利息为5.4 %
5年期定期存款利息为5.58%
活期存款利息为0.72%(活期存款每一季度结算一次利息)


如果 r 为年利率,n 为存款年数,则计算本息和公式为

1年期本息和:P = 1000 * (1 + r)
n年期本息和:P = 1000 * (1 + n * r)
存 n 次1年期的本息和:P = 1000 * (1 + r) ^ n

活期存款本息和:P = 1000 * (1 + r / 4) ^ 4n        1000 * (1 + r / 4)是一个季度的本息和
*/

#include <stdio.h>
#include <math.h>

int main(void)
{
	double r1 = 0.0414, r2 = 0.0468, r3 = 0.054, r5 = 0.0558, r0 = 0.0072;

	printf("P1 = %f\n", 1000 * (1 + 5 * r5));
	printf("P2 = %f\n", (1000 * (1 + 2 * r2)) * (1 + 3 * r3));
	printf("P3 = %f\n", (1000 * (1 + 3 * r3)) * (1 + 2 * r2));
	printf("P4 = %f\n", 1000 * pow((1 + r1), 5));
	printf("P5 = %f\n", 1000 * pow((1 + r0 / 4), 4 * 5));

	return 0;
}

运行结果:

购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。

设 d 为300000,p 为6000,r 为1%,对求得的月份取小数点后一位,对第二位四舍五入处理

计算还清月份 m 的公式:m = ((log p - log (p - d * r))) / log (1 + r)  m = log (p / (p - d * r)) / log (1 + r)


/*
购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。

设 d 为300000,p 为6000,r 为1%,对求得的月份取小数点后一位,对第二位四舍五入处理

计算还清月份 m 的公式:m = ((log p - log(p - d * r))) / log(1 + r)  m = log(p / (p - d * r)) / log(1 + r)
*/

#include <stdio.h>
#include <math.h>

int main(void)
{
	double d = 300000, p = 6000;
	float r = 0.01;

	printf("%.1f\n", log(p / (p - d * r)) / log(1 + r));

	return 0;
}

运行结果:

例:


#include <stdio.h>

int main()
{
	char c1, c2;
	c1 = 97;
	c2 = 98;
	printf("c1=%c,c2=%c\n", c1, c2);
	printf("c1=%d,c2=%d\n", c1, c2);
	return 0;
}

运行结果:

例:


#include <stdio.h>

int main()
{
	char c1, c2;
	c1 = 197;
	c2 = 198;
	printf("c1=%c,c2=%c\n", c1, c2);
	printf("c1=%d,c2=%d\n", c1, c2);
	return 0;
}

运行结果:

例:


#include <stdio.h>

int main()
{
	int c1, c2;
	c1 = 197;
	c2 = 198;
	printf("c1=%c,c2=%c\n", c1, c2);
	printf("c1=%d,c2=%d\n", c1, c2);
	return 0;
}

运行结果:

例:


#include <stdio.h>

int main()
{
	int a, b;
	float x, y;
	char c1, c2;
	scanf("a=%d b=%d", &a, &b);
	scanf("%f %e", &x, &y);
	scanf("%c%c", &c1, &c2);
	printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n", a, b, x, y, c1, c2);
	return 0;
}

运行结果:

请编程将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母“A”后面第四个字母是“E”因此“China”应译为“Glmre”请编写一程序,用赋初值的方法,c1,c2,c3,c4,c5这5个变量的值分别为‘C’、‘h’、‘i’、‘n’、‘a’,经过运算,使其变为‘G’、‘l’、‘m’、‘r’、‘e’。分别用 putchar 和 printf 函数输出这5个字符


#include <stdio.h>

int main()
{
	char c1 = 'C', c2 = 'h', c3 = 'i', c4 = 'n', c5 = 'a';

	c1 += 4;
	c2 += 4;
	c3 += 4;
	c4 += 4;
	c5 += 4;

	putchar(c1);
	putchar(c2);
	putchar(c3);
	putchar(c4);
	putchar(c5);

	printf("\n%c%c%c%c%c\n", c1, c2, c3, c4, c5);

	return 0;
}

运行结果:

设圆的半径 r = 1.5,圆柱高 h = 3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用 scanf 输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。


//设圆的半径 r = 1.5,圆柱高 h = 3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
//用 scanf 输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。

#include <stdio.h>
#include <math.h>

#define PAI 3.1415926

int main()
{
	float r, h;

	printf("请输入半径以及圆柱高\n");
	scanf("%f %f", &r, &h);

	printf("圆周长:%.2f\n", 2 * PAI * r);
	printf("圆面积:%.2f\n", PAI * pow(r, 2));
	printf("圆球表面积:%.2f\n", 4 * PAI * pow(r, 2));
	printf("圆球体积:%.2f\n", 4 * PAI * pow(r, 3) / 3.0);
	printf("圆柱体积:%.2f\n", PAI * pow(r, 2) * h);

	return 0;
}

运行结果: