C语言结构体与指针实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一 C语言结构体与指针
一、实验内容
1) 学生信息的显示,具体要求如下:
定义一个结构体描述学生信息(学号,姓名,性别,年龄,住址);
设计一个函数,用于显示单个学生信息,函数的参数为前面定义的结构体类型;
设计一个主函数,在主函数中输入学生的信息,并调用前面定义的函数进行显示(学生人数不少于5人)。
2) 输入若干个整数作为数组元素值,然后按输入时顺序的就地逆置排序,
最后打印出逆置后的元素值。要求用指针和动态内存分配方法实现。例如
输入:10 2 30 4 5,逆置后显示为:5 4 30 2 10。
二、代码
1) #include
struct Student
{
int studentID;
char name[20];
char sex[2]; //m=male f=female
int age;
char address[50];
};
void showTheDetail(struct Student s)
{
printf("%d\n",s.studentID);
printf("%s\n",);
printf("%s\n",s.sex);
printf("%d\n",s.age);
printf("%s\n\n",s.address);
}
void main()
{
int i;
struct Student student[5];
for(i=0;i<5;i++) {
printf("student%d\n",i);
scanf("%d",&student[i].studentID);
scanf("%s",&student[i].name);
scanf("%s",&student[i].sex);
scanf("%d",&student[i].age);
scanf("%s",&student[i].address);
}
for(i=0;i<5;i++) {
showTheDetail(student[i]);
}
}
2)#include
void change(int x[],int n)
{
int temp,i,j,m=(n-1)/2;
for(i=0;i<=m;i++)
{
j=n-1-i;
temp=x[i];x[i]=x[j];x[j]=temp;
}
return;
}
int main()
{
int n,i;
printf("please insert the amount of the numbers:\n");
scanf("%d",&n);
int array[n];
printf("please insert the numbers:\n");
for(i=0;i { scanf("%d",&array[i]); } change(array,n); for(i=0;i { printf("%d",array[i]); } } 三、心得体会 复习了c语言中的数组,结构体的知识,编程中没有出现问题。