C primer plus 编程练习 6.16

1.

#include <stdio.h>

int main(void)
{
	char letter[27];
	char ch;
	int index;
	for (ch = 'a',index = 0;ch <= 'z' ;ch++,index++ )
		letter[index] = ch;

	printf("%s",letter);

	return 0;
}
#include <stdio.h>
#define SIZE 26
int main(void)
{
	char letter[SIZE];
	char ch;
	int index;
	for (ch = 'a',index = 0;ch <= 'z' ;ch++,index++ )
	{
		letter[index] = ch;
                printf("%c",letter[index]);
	}

	return 0;
}

2.

#include <stdio.h>

int main(void)
{
	int i,j;
	for (i=1;i <= 5 ;i++ )
	{
		for (j=1;j <= i ;j++ )
		{
			printf("$");
		}
		printf("\n");
	}

	return 0;
}

3.

#include <stdio.h>

int main(void)
{
	int i,j;
	char ch;

	for (i = 1;i <= 6 ;i++ )
	{
		for (j = 1, ch = 'F';j <= i ;j++, ch-- )
		{
			printf("%c",ch);
		}
		printf("\n");
	}

	return 0;
}

4.

#include <stdio.h>

int main(void)
{
	int i,j;
	char ch = 'A';

	for (i = 1;i <= 6 ;i++ )
	{
		for (j = 1;j <= i ;j++, ch++ )
		{
			printf("%c",ch);
		}
		printf("\n");
	}

	return 0;
}

5.

#include <stdio.h>

int main(void)
{
	char let;
	char start;
	char start_up;
	char start_down;
	int space;

    printf("enter a letter: ");
	scanf("%c",&let);

	for (start = 'A'; start <= let ;start++ )
	{
		for (space = let - 1;space >= start ;space-- )
			printf(" ");
	
		for (start_up = 'A';start_up <= start ;start_up++ )
			printf("%c",start_up);
		
		for (start_down = start -1;start_down >= 'A' ;start_down-- )
			printf("%c",start_down);
		
			printf("\n");
	}

	return 0;
}

6.

#include <stdio.h>

int main(void)
{
	int num_up,num_down,num_start;
	int square,cube;

	printf("请输入上限数:");
	scanf("%d",&num_up);
	printf("请输入下限数:");
	scanf("%d",&num_down);

	printf("%5s %10s %15s\n","num","square","cube");

	for (num_start = num_down; num_start <= num_up ;num_start++ )
	{
		square = num_start * num_start;
		cube = square * num_start;

		printf("%5d %10d %15d\n",num_start,square,cube);
	}
	return 0;
}

7.

#include <stdio.h>
#include <string.h>

int main(void)
{
	char WORD[20];
	int len,index;
	char ch;

	printf("enter a word: ");
	scanf("%s",WORD);
	len = strlen(WORD);

	for (index = len -1 ; index >=0 ;index-- )
	{
		ch = WORD[index];
		printf("%c",ch);
	}

	return 0;
}

8.

#include <stdio.h>

int main(void)
{
	double num1, num2;
	double res;

	printf("Enter a pair of numbers: ");

	while (scanf("%lf %lf",&num1, &num2) == 2)
	{
		res = (num1 - num2) / (num1 * num2);
		printf("%.3f\n",res);
		printf("Enter the next pair of numbers(non-numeric to quit): ");
	}
	
	return 0;
}

9.

#include <stdio.h>

double func1 (double a,double b);

int main(void)
{
	double num1, num2;
	double res;

	printf("Enter a pair of numbers: ");

	while (scanf("%lf %lf",&num1, &num2) == 2)
	{
		res = func1(num1,num2);
		printf("%.3f\n",res);
		printf("Enter the next pair of numbers(non-numeric to quit): ");
	}

	return 0;
}

double func1 (double a,double b)
{
	double ans;
    ans = (a - b) / (a * b);
	return ans;
}

10

#include <stdio.h>

int main(void)
{
	int num1,num2;
	int start;
	int sum;

	printf("Enter lower and upper integer limits: ");
	scanf("%d %d",&num1,&num2);
	while (num1 < num2)
	{
		sum = 0;
		for (start = num1; start <= num2;start++)
			sum = sum + start * start;
		printf("The sums of the squares from %d to %d is %d\n",num1 * num1,num2 * num2,sum);
        printf("Enter the next set of limits: ");
	    scanf("%d %d",&num1,&num2);
	}
	printf("done!");

	return 0;
}

11.

#include <stdio.h>
#define SIZE 8

int main(void)
{
	int num[SIZE];
    int index;

    printf("Please enter %d integers.\n",SIZE);
	for (index = 0;index < SIZE ;index++ )
	    scanf("%d",&num[index]);	
 
    printf("Here,in reverse order,are the values you entered:\n");
	for (index = SIZE -1;index >=0 ;index-- )
		printf("%d ",num[index]);
    printf("\n");

	return 0;
}

12

#include <stdio.h>

int main(void)
{
	signed int n;
	double sum1 = 0;
	double sum2 = 0;
	int i;
	int sign = -1;

	printf("Enter the count time: ");
    scanf("%d",&n);

	while (n > 0)
	{
		sum1 = 0;
		sum2 = 0;
		for (i = 1 ;i <= n ;i++ )
		{
			sum1 = sum1 + 1.0 / i;
			sign = -1 * sign;
			sum2 = sum2 + sign * 1.0 / i;
		}
		printf("%f, %f\n",sum1,sum2);
	        printf("Enter the count time(< 0 to quit): ");
	    scanf("%d",&n);
	}

	return 0;
}

13

#include <stdio.h>
#define SIZE 8

int main(void)
{
	int num[SIZE];
	int n;
	int sum = 1;

	for (n = 0;n < SIZE ;n++ )
	{
		num[n] = sum;
	    sum *=2;
	}
	n = 0;
	do
	{
		printf("%d\n",num[n]);
		n++;
	}
	while (n < SIZE);

	return 0;
}

14

#include <stdio.h>

int main(void)
{
	double num1[8];
	double num2[8];
	double sum = 0.0;
	int i;

	printf("enter 8 number: \n");

	for (i = 0;i < 8 ;i++ )
	{
		printf("number#%d: ",i + 1);
		scanf("%lf",&num1[i]);
		sum += num1[i];
		num2[i] = sum;
	}
	for (i = 0;i < 8 ;i++ )
		printf("%8g  %8g\n",num1[i],num2[i]);

	return 0;
}

15

#include <stdio.h>
#include <string.h>

int main(void)
{
	char name[256];
	int len;

	printf("enter a string: ");
	scanf("%s",name);
    
	for (len = strlen(name) - 1; len >= 0;len-- )
		printf("%c",name[len]);

	return 0;
}

16.

#include <stdio.h>
#define RATE_SIMP 0.10
#define RATE_COMP 0.05
#define INIT_AMT 100.0

int main(void)
{
	int years = 0;
	double daphne = INIT_AMT;
	double deidre = INIT_AMT;
	do
	{
		daphne += INIT_AMT * RATE_SIMP;
		deidre += deidre * RATE_COMP;
		years++;
	}
	while (daphne > deidre);
    
	printf("%d years, daphne: $%.2f, deidre: $%.2f",years,daphne,deidre);

	return 0;
}

17

#include <stdio.h>
#define RATE 0.08
#define INIT_AMT 100.0
#define EXPENSE 10.0

int main(void)
{
	double remainder = INIT_AMT;
	int years = 0;

	do
	{
		remainder += remainder * RATE;
        remainder -= EXPENSE;
	    years++;
	}
	while (remainder > 0);
    
	printf("%d years",years);
	return 0;
}

18

#include <stdio.h>

int main(void)
{
	int friends,week;

	for (week = 1,friends = 5;friends < 150 ;week++ )
	{
		friends -= week;
		friends *= 2;
		printf(" the %d week, %d friends\n",week,friends);
	}

	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值