筆記:
1 、int[4][3]的含義為颠黎,“元素類型為int另锋,元素個數(shù)為3的數(shù)組”為元素,元素個數(shù)為4的數(shù)組
2狭归、數(shù)組初始化0, int a[10]={0};相當于將a數(shù)組的所有元素的初始值設(shè)為0
練習題
5-1
#include<stdio.h>
void main()
{
int a[5];
for(int b=0;b<5;b++)
{
a[b]=b;
}
for(int b=0;b<5;b++)
{
printf("a[%d]=%d\n",b,a[b]);
}
}
5-2
#include<stdio.h>
void main()
{
int a[5];
for(int b=4;b>=0;b--)
{
a[b]=4-b;
}
for(int b=0;b<=4;b++)
{
printf("a[%d]=%d\n",b,a[b]);
}
}
5-3
#include<stdio.h>
void main()
{
int v[5]={5,4,3,2,1};
for(int i=0;i<5;i++)
printf("v[%d]=%d\n",i,v[i]);
}
5-4
#include<stdio.h>
void main()
{
int a[5]={17,23,36};
int b[5];
puts(" a b");
puts("--------");
for(int c=0;c<5;c++)展開閱讀全文
{
b[c]=a[4-c];
}
for(int c=0;c<5;c++)
{
printf("%4d%4d\n",a[c],b[c]);
}
}
5-5
#include<stdio.h>
#define NUMBER 7
void main()
{
int num[7],temp;
for(int i=0;i<NUMBER;i++)
{
printf("請輸入第%d個數(shù)字:\n",i+1);
scanf("%d",&num[i]);
}
for(int i=0;i<3;i++)
{
temp = num[i];
num[i] = num[6-i];
num[6-i] = temp;
}
puts("倒序后的:");
for(int i=0;i<NUMBER;i++)
{
printf("num[%d]=%d\n",i,num[i]);
}
}
5-6
略
5-7
5-10
#include<stdio.h>
void main()
{
int tensu1[4][3];
int tensu2[3][4];
int count[4][4];
for(int j=0;j<4;j++)
{
for(int k=0;k<3;k++)
{
printf("請輸入tensu1[%d][%d]的值是:",j,k);
scanf("%d",&tensu1[j][k]);
}
}
for(int j=0;j<3;j++)
{
for(int k=0;k<4;k++)
{
printf("請輸入tensu2[%d][%d]的值是:",j,k);
scanf("%d",&tensu2[j][k]);
}
}
for(int j=0;j<4;j++)
{
for(int k=0;k<4;k++)
{
count[j][k]=tensu1[j][k]*tensu2[j][k];
}
}
puts("第一次考試分數(shù):");
for(int j=0;j<4;j++)
{
for(int k=0;k<4;k++)
printf("%4d",tensu1[j][k]);
putchar('\n');
}
puts("第二次考試的分數(shù):");
for(int j=0;j<4;j++)
{
for(int k=0;k<4;k++)
printf("%4d",tensu2[j][k]);
putchar('\n');
}
puts("乘積為:");
for(int j=0;j<4;j++)
{
for(int k=0;k<4;k++)
printf("%4d",count[j][k]);
putchar('\n');
}
}
5-11
#include<stdio.h>
void main()
{
int tensu[6][2];
int yuwen=0,shuxue=0;
int sum[6]={};
//int sum2[6][2];
//int sum[2][1];
int count[2][1];
for(int j=0;j<6;j++)
{
for(int k=0;k<2;k++)
{
if(k)
printf("請輸入第%d名同學數(shù)學的分數(shù)是:",j+1);
else
printf("請輸入第%d名同學語文的分數(shù)是:",j+1);
scanf("%d",&tensu[j][k]);
}
}
for(int j=0;j<6;j++)
{
for(int k=0;k<2;k++)
{
printf("%4d",tensu[j][k]);
}
putchar('\n');
}
for(int j=0;j<6;j++)
{
for(int k=0;k<2;k++)
sum[j]+=tensu[j][k];
yuwen += tensu[j][0];
shuxue += tensu[j][1];
}
printf("語文的總分為:%d夭坪,平均分為:%.1f\n",yuwen,(double)yuwen/6);
printf("數(shù)學的總分為:%d,平均分為:%.1f\n",shuxue,(double)shuxue/6);
for(int i=0;i<6;i++)
printf("第%d個同學的總分是%d过椎,平均分是:%.1f\n",i+1,sum[i],(double)sum[i]/2);
}
5-12
#include<stdio.h>
void main()
{
int tensu[2][4][3];
int sum[4][3]={};
for(int i = 0;i < 2;i++)
{
for(int j = 0;j < 4;j++)
{
for(int k = 0;k < 3;k++)
{
printf("請輸入第%d次考試%d名同學第%d們的成績:",i+1,j+1,k+1);
scanf("%d",&tensu[i][j][k]);
}
}
}
for(int i = 0;i < 2;i++)
{
printf("第%d次考試的分數(shù)是:\n",i);
for(int j = 0;j < 4;j++)
{
for(int k = 0;k < 3;k++)
{
printf("%4d",tensu[i][j][k]);
}
putchar('\n');
}
}
puts("總分:");
for(int i = 0;i < 2;i++)
{
for(int j = 0;j < 4;j++)
{
for(int k = 0;k < 3;k++)
{
sum[j][k]+=tensu[i][j][k];
}
}
}
for(int j = 0;j < 4;j++)
{
for(int k = 0;k < 3;k++)
{
printf("%4d",sum[j][k]);
}
putchar('\n');
}
}