C Primer Plus编程练习答案(Chapter6)

6.16.1

#include <stdio.h>
int main() {
	char alphabet[26];
	int i;
	
	for (i = 0; i < 26; i++)
		alphabet[i] = 'a' + i;
	
	for (i = 0; i < 26; i++)
		printf("%c ", alphabet[i]);

	return 0;
}

 6.16.2

#include <stdio.h>
int main() {
	int i, j;
	for (i = 0; i < 5; i++) {
		for (j = 0; j < i + 1; j++)
			printf("$");
		printf("\n");
	}
}		

 6.16.3

#include <stdio.h>
int main() {
	int i, j;
	for (i = 0; i < 6; i++) {
		for (j = 0; j < i + 1; j++)
			printf("%c",'F' - j);
		printf("\n");
	}
}		

 6.16.4

#include <stdio.h>
int main() {
	int i, j, k = 0;
	for (i = 0; i < 6; i++) {
		for (j = 0; j < i + 1; j++) {
			printf("%c", 'A' + k);
			k++;
		}
		printf("\n");
	}
}		

 6.11.5

#include <stdio.h>
int main() {
	int i, j, k;
	char letter;

	printf("Please enter a captial letter: ");
	scanf_s("%c", &letter);

	for (i = 0; i < letter - 'A' + 1; i++) {
		for (j = 0; j < letter - 'A' - i; j++)
			printf(" ");
		for (k = 0; k < i + 1; k++)
			printf("%c", 'A' + k);
		for (; k - 1 > 0; k--)
			printf("%c", 'A' + k - 2);
		printf("\n");
	}
	return 0;
}		

 6.11.6

#include <stdio.h>
int main() {
	int max, min;
	int i, temp;

	printf("请输入表格的上限和下限:");
	scanf_s("%d %d", &max, &min);
	printf("整数    平方    立方   \n");

	for (i = 0; i <= max - min; i++) {
		temp = min + i;
		printf("%-7d %-7d %-7d\n", temp, temp * temp, temp * temp * temp);
	}

	return 0;
}

 6.11.7

#include <stdio.h>
#include <string.h>
int main() {
	char word[20], new_word[20];
	int i, len;

	printf("Please enter a word: ");
	scanf("%s", word);
	len = strlen(word);
	for (i = 0; i < len; i++)
		new_word[i] = word[len - i - 1];
	new_word[i] = '\0';

	printf("%s", new_word);
}

 6.11.8

#include <stdio.h>
int main() {
	float f1, f2;
	int n;
	printf("Please enter two float number(NaN to quit):");
	n = scanf_s("%f %f", &f1, &f2);
	while (n == 2){
		printf("%.2f \n", (f1 - f2) / (f1 * f2));
		printf("Please enter next two float number(NaN to quit):");
		n = scanf_s("%f %f", &f1, &f2);
	}
	printf("byebye.");
	
	return 0;
}

6.11.9 

 

#include <stdio.h>
float count(float F1, float F2) {
	float result;
	result = (F1 - F2) / (F1 * F2);
	return result;
}
int main() {
	float f1, f2;
	int n;
	printf("Please enter two float number(NaN to quit):");
	n = scanf_s("%f %f", &f1, &f2);
	while (n == 2){
		printf("%.2f \n", count(f1,f2));
		printf("Please enter next two float number(NaN to quit):");
		n = scanf_s("%f %f", &f1, &f2);
	}
	printf("byebye.");
	
	return 0;
}

 6.11.10

#include <stdio.h>
int main() {
	int max, min;
	int i, sum = 0;
	printf("Enter lower and upper integer limits: ");
	scanf_s("%d %d", &min, &max);

	while (min < max) {
		sum = 0;
		for (i = 0; i < max - min + 1; i++)
			sum += (min + i) * (min + i);
		printf("The sums of the square from %d to %d is %d\n", min * min, max * max, sum);
		printf("Enter next set of limits: ");
		scanf_s("%d %d", &min, &max);
	}
	printf("Done.");
	return 0;

}

 6.16.11

#include <stdio.h>
#define SIZE 8
int main() {
	int array[SIZE];
	int i;
	
	printf("Please enter %d numbers: ", SIZE);
	for (i = 0; i < SIZE; i++)
		scanf_s("%d", &array[i]);

	for (i = 0; i < SIZE; i++)
		printf("%d ", array[SIZE - i - 1]);
	
	return 0;
}

6.16.12

#include <stdio.h>
int main() {
	int num, i;
	double sum1 = 0, sum2 = 0;
	printf("Please enter a number: ");
	scanf_s("%d", &num);
	
	for (i = 1; i <= num; i++) {
		if (i % 2 != 0) {
			sum1 += 1.0 / (double)i;
			sum2 += 1.0 / (double)i;
		}
		else {
			sum1 += 1.0 / (double)i;
			sum2 += -1.0 / (double)i;
		}
	}

	printf("The first sum of number is: %lf\n", sum1);
	printf("The first sum of number is: %lf\n", sum2);

	return 0;
}

 6.16.13

#include <stdio.h>
#define SIZE 8
int main() {
	int array[SIZE], sum = 2;
	int i, j;
	
	for (i = 0; i < SIZE; i++) {
		array[i] = sum;
		sum *= 2;
	}

	i = 0;
	do {
		printf("No.%d number is: %d\n", i + 1, array[i]);
		i++;
	} while (i < SIZE);

	return 0;
}

 6.16.14

#include <stdio.h>
#define SIZE 8
int main() {
	double array1[SIZE], array2[SIZE];
	int i, j;
	double sum = 1;

	printf("Please enter 8 number: ");//第一次输入循环
	for (i = 0; i < SIZE; i++){
		scanf_s("%lf", &array1[i]);
		sum *= array1[i];
		array2[i] = sum;
	}

	for (i = 0; i < SIZE; i++)        //第二次输出数组1循环
		printf("%9.2lf", array1[i]);

	printf("\n");                     //第三次输出数组2循环
	for (i = 0; i < SIZE; i++)
		printf("%9.2lf", array2[i]);
	
    return 0;
}

6.16.15

#include <stdio.h>
int main() {
	char ch[100], ch1;
	int i = 0;

	printf("Please enter words you want: ");
	scanf_s("%c", &ch1);
	while (ch1 != '\n') {
		ch[i] = ch1;
		i++;
		scanf_s("%c", &ch1);
	}

	i -= 1;
	printf("The word reversed is:");
	for (; i >= 0; i--)
		printf("%c", ch[i]);

	return 0;
}

 6.16.16

#include <stdio.h>
int main() {
	double money_Daphne  = 100.0;
	double money_Deirdre = 100.0;
	int i;

	for (i = 0; money_Daphne >= money_Deirdre; i++) {
		money_Daphne  += 100.0 * 0.1;
		money_Deirdre += money_Deirdre * 0.05;
		//printf("%2d %8.2lf %8.2lf\n", i, money_Daphne, money_Deirdre);(检验用)
	}

	printf("%d years later, Daphne's money is:%.2lf ", i, money_Daphne);
	printf("and Deirdre's money is:%.2lf", money_Deirdre);

	return 0;
}

 6.16.17

#include <stdio.h>
int main() {
	double money = 100;
	int i;

	for (i = 1; money >= 0; i++) {
		money += money * 0.08;
		//printf("%2d %6.2lf", i, money);	检验用
		money -= 10.0;
		//printf(" %-5.2lf\n", money);		检验用
	}

	printf("%d years later, Chuckie will take all money he won.", i - 1);

	return 0;
}

 6.16.18

#include <stdio.h>
int main() {
	int friend_num, i;

	for (friend_num = 5, i = 1; friend_num <= 180; i++) {
		friend_num = (friend_num - i) * 2;
		printf("The No.%d week Dr.Rabnud has %-3d frinends\n", i, friend_num);
	}

	printf("The number of Dr.Rabnud's friends is over than Dunbar's number.");
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值