明解C语言(入门篇)第五章

练习5-1

#include <stdio.h> 
 
int main(void)
{
	int i;
	int v[5];
	
	for(i=0;i<5;i++){
		v[i]=i;
		printf("v[%d] = %d\n",i,v[i]);
	}
	return 0;
}

练习5-2

#include <stdio.h> 
 
int main(void)
{
	int i;
	int v[5];
	
	for(i=5;i>0;i--){
		v[5-i]=i;
		printf("v[%d] = %d\n",5-i,v[5-i]);
	}
	return 0;
}

练习5-3

#include <stdio.h> 
 
int main(void)
{
	int i;
	int v[5] = {5,4,3,2,1};
	
	for(i=0;i<5;i++){

		printf("v[%d] = %d\n",i,v[i]);
	}
	return 0;
}

练习5-4

#include <stdio.h> 
 
int main(void)
{
	int i;
	int a[5] = {17,23,36};
	int b[5];
	printf("  a    b\n");
	printf("-------\n");	
	for(i=0;i<5;i++){
		b[i]=a[4-i];

		printf("%4d%4d\n",a[i],b[i]);
	}
	return 0;
}

练习5-5

#include <stdio.h> 

#define NUMBER 7 
int main(void)
{
	int i;
	int x[NUMBER];
	
	for(i=0;i<NUMBER;i++){
		printf("x[%d]:",i);
		scanf("%d",&x[i]);
	}
	for(i=0;i<3;i++){
		int temp = x[i];
		x[i] = x[NUMBER-1-i];
		x[NUMBER-1-i] = temp;
	}
	puts("倒叙排列了。");
	for(i=0;i<NUMBER;i++){
		printf("x[%d] = %d\n",i,x[i]);
	}
	return 0;
}

练习5-7

#include <stdio.h> 

#define NUMBER 4 
int main(void)
{
	int i, n;
	int x[NUMBER];
	int bunpu[4]={0};
	
	printf("数据个数:");    scanf("%d",&n);
	
	for(i=0;i<NUMBER;i++){
		printf("%d号:",i+1);
		scanf("%d",&x[i]);
	}
	printf("{");
	printf("%d",x[0]);
	for(i=1;i<NUMBER;i++){
		printf(",%d",x[i]);
	}
	printf("}");

	return 0;
}

练习5-8

#include <stdio.h> 

#define NUMBER 80 
int main(void)
{
	int i, j;
	int num;
	int tensu[NUMBER];
	int bunpu[11]={0};
	
	printf("请输入学生人数:");
	
	do{
		scanf("%d",&num);
		if (num<1 || num>NUMBER){
			printf("\a请输入1~%d的数:",NUMBER);
		}
	} while(num<1 || num>NUMBER);
	
	printf("请输入%d人的分数:\n",num);
	
	for(i=0;i<num;i++){
		printf("%2d号:",i+1);
		do{
			scanf("%d",&tensu[i]);
			if(tensu[i]<0||tensu[i]>100){
				printf("\a请输入1~100的数:");
			}
		}while(tensu[i]<0||tensu[i]>100);
		bunpu[tensu[i]/10]++; 
	}
	puts("\n---分布图---");

	
	for(i=0;i<=9;i++){
		printf("%3d-%3d:",i*10,i*10+9);
		for(j=0;j<bunpu[i];j++){
			putchar('*');
		}
		putchar('\n');
	}
	printf("    100:");
	for(j=0;j<bunpu[10];j++){
		putchar('*'); 
	}
	
	return 0;
}

练习5-9

#include<stdio.h>

#define NUMBER 80

int main(void)
{
    int i, j, max;
    int num;
    int tensu[NUMBER];
    int bunpu[11] = {0};

    printf("请输入学生人数: ");
    do{
        scanf("%d", &num);
        if (num < 1 || num > NUMBER)
            printf("请输入1-%d的数: ", NUMBER);
    }while (num < 1 || num > NUMBER);
    printf("请输入%d人的分数。\n", num);
    for (i = 0; i < num; i++)
    {
        printf("%2d号: ", i + 1);
        do{
            scanf("%d", &tensu[i]);
            if (tensu[i] < 1 || tensu[i] > 100)
                printf("请输入1~100的数: ");
        }while (tensu[i] < 1 || tensu[i] > 100);
        bunpu[tensu[i] / 10]++;
    }
    
    for(i=0;i<10;i++){
    	printf("%2d~%2d分数段含有%d个\n",i*10,i*10+9,bunpu[i]);     //为了更好地理解显示下各个分数段的个数 
	}
	printf("%5d分数段含有%d个\n",100,bunpu[10]);
	printf("\n");
    
    puts("\n--------------------分布图-------------------");

    max = bunpu[0];
    for (i = 1; i < 11; i++)
    {
        if (max < bunpu[i])
            max = bunpu[i];
    }
    for (j = max; j > 0; j--)
    {
        for (i = 0; i < 11; i++)
        {
            if (bunpu[i] >= j)
                printf(" *  ");
            else
                printf("    ");
        }
        putchar('\n');
    }
    putchar('\n');
    printf("---------------------------------------------\n");
    for (j = 0; j <= 100; j += 10)
    {
        printf(" %d ", j);
    }


    return 0;
}

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值