目录
一、有一个班,3个学生,各学习4 门课,计算总的平均分数,并查询用户输入的学生的成绩(序号1,2,3)
二、有一个3*4的二维数组,要求用指向元素的指针变量输出二维数组元素的值
一、有一个班,3个学生,各学习4 门课,计算总的平均分数,并查询用户输入的学生的成绩(序号1,2,3)
代码如下:
#include <stdio.h>
void average(float *p,int n)
{
float *p_end;
float a,sum=0;
p_end=p+n-1;
for(;p<=p_end;p++)
{
sum+=*p;
}
a=sum/n;
printf("average=%5.2f\n",a);
}
void search(float (*p)[4],int n)
{
int i;
printf("The score of No.%d are:\n",n+1);
for(i=0;i<4;i++)
{
printf("%5.2f",*(*(p+n)+i));
}
printf("\n");
}
int main()
{
float arr[3][4]={0.0};
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
scanf("%f",&arr[i][j]);
}
}
average(*arr,12);
search(arr,2);
return 0;
}
二、有一个3*4的二维数组,要求用指向元素的指针变量输出二维数组元素的值
代码如下:
#include <stdio.h>
int main()
{
int arr[3][4]={0};
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&arr[i][j]);
}
}
int *p;
for(p=arr[0];p<arr[0]+12;p++)
{
if((p-arr[0])%4==0)printf("\n");
printf("%4d",*p);
}
printf("\n");
return 0;
}
三、(指针)将字符串a复制为字符串b,然后输出字符串b
代码如下:
#include <stdio.h>
#include <string.h>
int main()
{
char a[] = "talk is cheap,show me your code!", b[100];
char *p=b;
int i;
for(i=0;i<strlen(a);i++)
{
*(p+i)=a[i];
}
*(p+i)='\0';
printf("p = %s, word = %s", p, b);
return 0;
}