资源描述:
《实验报告-实验1-复习、-指针(1)(学号-姓名).docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验报告_实验1复习、指针(1)(学号_姓名)一、实验目的:1、复习C语言的基本概念和基础知识;2、通过查看变量地址,了解不同类型数据在内存存储情况;理解用指针获取内存数据的两个关键点:首地址、数据类型(决定占用的存储单元的个数、数据存储方式);3、掌握指针变量的定义方法、=(赋值)、&(取地址)、*(取内容,间接访问);4、能够用指针变量作函数参数,实现通过函数调用得到n个要改变的值;5、注意避免使用悬空指针及swap函数的不正确写法。二、实验内容1、(基础题)程序代码:#include#includeint
2、main(void){charstr[50];intk;inta,e,i,o,u;a=e=i=o=u=0;printf("请输入一个长度不超过50的字符串");gets(str);for(k=0;str[k];k++){if(str[k]=='A'
3、
4、str[k]=='a')a++;if(str[k]=='E'
5、
6、str[k]=='e')e++;if(str[k]=='I'
7、
8、str[k]=='i')i++;if(str[k]=='O'
9、
10、str[k]=='o')o++;if(str[k]=='U'
11、
12、str[k]=='u')u++;}prin
13、tf("");printf("该字符串中出现:");printf("A或a出现的次数:%d",a);printf("E或e出现的次数:%d",e);printf("I或i出现的次数:%d",i);printf("O或o出现的次数:%d",o);printf("U或u出现的次数:%d",u);return0;}2、(基础题)#include//定义结构体Student,学生姓名不超过10个字符//三门课程成绩均为百分制,只取整数structStudent{//代码段1charname[10];intchi
14、nese;intenglish;intmath;inttotal;};intmain(){//定义结构体数组stud[3]//对input()、sum()、print()三个函数进行声明//调用input()、sum()、print()三个函数//代码段2structStudentstud[3];voidinput(structStudents[],intn);voidprint(structStudents[],intn);voidsum(structStudents[],intn);input(stud,3);sum(stud,3);print
15、(stud,3);return0;}//定义输入n名学生的姓名、三门课程成绩的函数。一个学生数据的输入如下图所示voidinput(Students[],intn){//代码段3inti;for(i=0;i16、math:");scanf("%d",&s[i].math);}printf("");}//定义计算n名学生三门课程总分的函数voidsum(Students[],intn){//代码段4inti;for(i=0;i17、:",i+1);printf("name:%s",s[i].name);printf("chinese:%d",s[i].chinese);printf("english:%d",s[i].english);printf("math:%d",s[i].math);printf("tatol:%d",s[i].total);}printf("");}3、(基础题)根据注释填写程序所缺代码:(1):char*pch_1=&ch1,*pch_2=&ch2;(2):int*pn_1=&n1,*pn_2=&n2;(3):dou
18、ble*pd_1=&d1,*pd_2=&d2;(4):printf("pch_1:%x",pch_1);printf(