C语言实验报告
实习主题 实验题目 实验时间 C语言程序设计 2013 学年 2 学期 1 周 ( 2013 年 2 月 25 日— 3 月2日) 学生姓名 实验地点 张永聪 经济管理学院电子实验室 学号 设备号 34 2012211156 班级 0311202 指导教师 刘友军
1. 编写一个函数pi,其功能是根据以下近似公式求π值:(π*π)/6=1+1/(2*2) +1/(3*3) +?
+1/(n*n)。并写一个主函数,调用该函数计算π的值,n在主函数中从键盘输入。要求程序存入test11.c。 设计思路:主要考察函数的调运,以及如何定义函数,函数的运行,此题应该使用一个循环。 调试结果:
 #include
int m=1,n,s; float p=0,t; scanf(\ while(m<=n) {
s=1/(m*m); p=p+s; m++; }
t=sqrt(p*6);
printf(\ }
运行结果:
2. 下列程序是将一个数组中的值按逆序重新存放并输出。请输入并完善程序。要求程序存
入test12.c。
#include 
{ int arr[10],i,j,temp; }
设计思路:数组的考察,首先定义一个数组,FOR循环的使用,数组的转换。 运行结果:
printf(“Input value of array:\\n”); for(i=0;i<10;i++)
scanf(“%d”,
&arr[i] );
arr[j] ,arr[j]=temp;
for(i=0,j=9;i<=j;i++,j--)
temp=arr[i],arr[i]=
for(i=0;i<10;i++)
printf(“M”,
arr[i] );
3. 在下列程序中,函数my_cmp()的功能是比较字符串s和t的大小,当s等于t时返回0,
否则返回s和t的第一个不同字符ASCII码差值,当s #include  * *  int my_cmp(char *s,char *t) { while(*s==*t)       {    if(*s++==0)  return(0); ++s,++t;  *  }  return(*s-*t);  }  void main()  *      { char *s1,*s2;    gets(s1);     gets(s2);      if(my_cmp(s1,s2)==0)  printf(“EQ”); else if(my_cmp(s1,s2)>0)   printf(“s1>s2”);   else printf(“s2>s1”); }  设计思路:函数的调用,以及while、if语句的使用,如何输入一个字符串,指针的运用。    运行结果:    4. 编写一个程序用来统计学生成绩。其功能包括输入学生姓名和成绩,按成绩从高到低排 列打印输出,对前80%的学生定为合格(pass),后20%的学生定为不合格(fail)。要求程序存入test14.c。 设计思路:  调试结果:#include \#include \struct student {    char name[20]; float score;   struct student *next; };  int n;  struct student *creat(void) {                      struct student *head,*p1,*p2; n=0;  head=p1=p2=(struct student*)malloc(sizeof(struct student)); printf(\请输入学生姓名:\\n\ scanf(\ printf(\请输入学生成绩:(成绩为零为结束)\\n\scanf(\while(p1->score!=0) {   n++;  if(n!=1)p2->next=p1;   p2=p1;  p1=(struct student*)malloc(sizeof(struct student));   printf(\请输入学生姓名:\\n\ scanf(\  printf(\请输入学生成绩:\\n\ scanf(\}  p2->next=NULL;   return head; }  struct student *sort(struct student *head) 
相关推荐: