C语言上机实习报告Word格式文档下载.docx

上传人:b****4 文档编号:8315771 上传时间:2023-05-11 格式:DOCX 页数:15 大小:235.44KB
下载 相关 举报
C语言上机实习报告Word格式文档下载.docx_第1页
第1页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第2页
第2页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第3页
第3页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第4页
第4页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第5页
第5页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第6页
第6页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第7页
第7页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第8页
第8页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第9页
第9页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第10页
第10页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第11页
第11页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第12页
第12页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第13页
第13页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第14页
第14页 / 共15页
C语言上机实习报告Word格式文档下载.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言上机实习报告Word格式文档下载.docx

《C语言上机实习报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言上机实习报告Word格式文档下载.docx(15页珍藏版)》请在冰点文库上搜索。

C语言上机实习报告Word格式文档下载.docx

(3)源程序

inta=3,b=4,c=5;

floatx=1.2,y=2.4,z=-3.6,o,p,q;

charc1='

a'

c2='

b'

;

doubleu=51274,n=128765;

o=x+y;

p=y+z;

q=z+x;

a=%d,b=%d,c=%d\n,x=%f,y=%f,z=%f\n,x+y=%f,y+z=%f,z+x=%f\n,u=%5.0f,n=%6.0f\n,c1=%cor97(SACII),c2=%cor98(SACII)\n"

a,b,c,x,y,z,o,p,q,u,n,c1,c2);

(4)正确运行结果

2.1.2.3、

(1)问题:

设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。

计算机过精确到0.01。

(2)分析与设计:

定义变量后,根据已知的公式,依次求出各个值。

doubler=1.5,h=3;

floatl,s,S,V,v;

l=6.28*r;

s=3.14*r*r;

S=12.56*r;

V=4/3*3.14*r*r;

v=3.14*r*r*h;

l=%3.2f,s=%3.2f,S=%3.2f,V=%3.2f,v=%3.2f"

l,s,S,V,v);

2、2分支程序

2.2.1、目的

(1)掌握逻辑运算符和逻辑表达式的表示方法。

(2)掌握选择运算符的程序设计方法。

(3)熟练掌握if语句和switch语句。

2.2.2、问题

编程求一元二次方程的解?

2.2.3、问题分析与设计

2.2.4、源程序

#include<

stdio.h>

math.h>

string.h>

voidmain()

floata,b,c,disc,x1,x2,realpart,imagpart;

%f,%f,%f"

Theequation"

);

if(fabs(a)<

=1e-6)

printf("

isnotaquardratic\n"

else

{

disc=b*b-4*a*c;

if(fabs(disc)<

printf("

hastwoequalroots:

%8.4f\n"

-b/(2*a));

else

if(disc>

1e-6)

{

x1=(-b+sqrt(disc))/(2*a);

x2=(-b-sqrt(disc))/(2*a);

printf("

hasdistinctrealroots:

%8.4fand%8.4f\n"

x1,x2);

}

else

realpart=-b/(2*a);

imagpart=sqrt(-disc)/(2*a);

hascomplexroots:

\n"

%8.4f+%8.4fi\n"

realpart,imagpart);

8.4f-%8.4fi\n"

}

2.2.5、正确运行结果

2.3循环结构

2.3.1目的

(1)掌握用while语句、do...while语句和for语句实现循环的方法。

(2)掌握循环程序设计中的一些基本算法及设计技巧。

2.3.2.1

(1)问题:

输入两个数m和n,求最小公倍数。

(2)源程序

#include<

intm,n,i;

请输入两个数:

"

%d,%d"

m,&

n);

for(i=1;

i<

=m*n;

i++)

if(i%m==0&

&

i%n==0)

最小公倍数为%d"

i);

break;

(3)正确运行结果。

2.3.2.2

(1)问题:

输入一个正整数K,求出它是几位数,并按逆序输出各位数字,例如原数是321,应输出123。

voidmain()

longa,n;

printf("

a=?

"

scanf("

%ld"

a);

n=0;

while(a)

n++;

%d"

a%10);

a/=10;

}

\nn=%d\n"

n);

(3)正确运行结果

2.4数组与字符串的使用

2.4.1、目的

(1)掌握数组的定义及其元素的引用方法。

(2)掌握数组作为数据结构时的程序设计方法。

(3)掌握利用数组实现一些常用算法的基本技巧。

(4)掌握字符数组和字符串函数的使用。

2.4.2.1

(1)问题:

求数组a中最大值和最小值所在的位置。

#defineN5

{inta[N],i,max,min;

请输入%d个要处理是数据:

N);

for(i=0;

N;

%d,"

a[i]);

min=a[0];

max=a[0];

if(min>

a[i])

min=a[i];

if(max<

max=a[i];

\n最小值为%d,最小值下标为:

min);

if(a[i]==min)

%d"

i+1);

\n最大值为%d,最大值下标为:

max);

for(i=0;

if(a[i]==max)

(3)正确运行结果

2.4.2.2

(1)问题:

将一整数数列按奇数在前,偶数在后的顺序重新排放,并要求奇偶两部分分别有序。

#defineN15

voidsort(int*,int);

voidswap(int*,int*);

intmain()

intint_array[N]={0,10,9,8,7,6,5,4,3,2,1,11,15,13,0};

inti;

sort(int_array,N);

for(i=0;

%5d\n"

int_array[i]);

return0;

voidsort(int*ptr,intn)

inti,j;

n;

for(j=n-1;

j>

i;

j--)

if(ptr[j]!

=0&

ptr[j]%2==1)

if((ptr[j]%2+ptr[j-1]%2!

=2)||(ptr[j]<

ptr[j-1]))

swap(&

ptr[j],&

ptr[j-1]);

for(i=n-1;

i>

0;

i--)

for(j=0;

j<

j++)

ptr[j]%2==0)

if((ptr[j]%2+ptr[j+1]%2!

=2)||(ptr[j]>

ptr[j+1]))

swap(&

ptr[j+1]);

voidswap(int*fst,int*sec)

inttemp;

temp=*fst;

*fst=*sec;

*sec=temp;

(4)正确的运行结果

2.4.2.3

(1)问题:

编写程序,将字符数组s2中的全部字符串复制到字符数组s1中。

要求不用strcpy()函数,复制时连同字符串后面的’\0’一起复制到字符数组s1中。

charstr1[20],str2[]={"

iamastudent"

};

inti,j=0,k=0;

{if(str2[i]==0)

break;

{str1[j++]=str2[i];

k++;

str1[j++]=0;

for(j=0;

=k;

%c"

str1[j]);

(3)正确的运行结果

2.6指针

2.6.1目的:

(1)掌握指针的概念,会定义和使用指针变量

(2)掌握指针变量函数作参数时,参数的传递过程及其用法。

(3)掌握一维数组指针、二维数组指针、字符串指针的概念及其基本用法。

2.6.2.1

(1)问题:

编写函数,对传递进来的两个整型变量计算它们的和与积之后,通过参数返回。

malloc.h"

stdlib.h"

inta=1,b=2,c,d,*p1,*p2;

p1=&

a;

p2=&

b;

b);

c=*p1+*p2;

d=*p1**p2;

sum=%d,chengji=%d"

c,d);

2.6.2.2

(1)问题:

在整型变量year、month、day中输入当前日期,然后分别形成如下两种形式的日期字符串并输出:

月/日/年和年/月/日。

int*p1,*p2,*p3,year,month,day;

year;

month;

p3=&

day;

year,&

month,&

day);

%d月,%d日,%d年\n"

*p2,*p3,*p1);

%d年,%d月,%d日\n"

*p1,*p2,*p3);

2.8文件

2.8.1目的

(1)学会对文本文件的读写操作。

(2)学会对二进制文件的读写操作。

2.8.2问题:

用文本编辑器建立一个文本文件,存放n个学生的单科成绩(数据格式自行设计),并编程读入这些数据,求出最高分、最低分及平均分。

2.8.3源程序

structstudent

intnumber;

charname[10];

intscore[3];

floatavg;

inti,j,n,sum;

请输入学生的个数n\n"

structstudent*stu;

stu=(student*)malloc(n*sizeof(student));

FILE*fp;

请输入学生%d的信息\n"

No.(数字)\n"

scanf("

stu[i].number);

Name.(字符)\n"

%s"

stu[i].name);

sum=0;

score.(数字)\n"

for(j=0;

3;

{

scanf("

stu[i].score[j]);

sum+=stu[i].score[j];

}

stu[i].avg=sum/3.0;

fp=fopen("

stud.txt"

"

w"

if(fwrite(&

stu[i],sizeof(student),1,fp)!

=1)

filewriteerror\n"

fclose(fp);

r"

fread(&

stu[i],sizeof(student),1,fp);

%d%s%d%d%d%f\n"

stu[i].number,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].avg);

2.8.4正确的运行结果

心得体会:

经过了四次上机实习,包括在机房里老师的指导,同时在宿舍里用电脑进行的练习,

(1)对在电脑上操作VC环境下的程序有了基本的方法,同时掌握了修改程序的简单方法

(2)对编辑程序产生了极大地兴趣,以及在数组、指针、文件等方面的更深一步的了解和运用(3)形成了分析和解决编程问题的基本思路。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 思想汇报心得体会

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2