练习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;
}