c语言课程设计报告Word文档格式.docx

上传人:b****2 文档编号:34516 上传时间:2023-04-28 格式:DOCX 页数:33 大小:342.48KB
下载 相关 举报
c语言课程设计报告Word文档格式.docx_第1页
第1页 / 共33页
c语言课程设计报告Word文档格式.docx_第2页
第2页 / 共33页
c语言课程设计报告Word文档格式.docx_第3页
第3页 / 共33页
c语言课程设计报告Word文档格式.docx_第4页
第4页 / 共33页
c语言课程设计报告Word文档格式.docx_第5页
第5页 / 共33页
c语言课程设计报告Word文档格式.docx_第6页
第6页 / 共33页
c语言课程设计报告Word文档格式.docx_第7页
第7页 / 共33页
c语言课程设计报告Word文档格式.docx_第8页
第8页 / 共33页
c语言课程设计报告Word文档格式.docx_第9页
第9页 / 共33页
c语言课程设计报告Word文档格式.docx_第10页
第10页 / 共33页
c语言课程设计报告Word文档格式.docx_第11页
第11页 / 共33页
c语言课程设计报告Word文档格式.docx_第12页
第12页 / 共33页
c语言课程设计报告Word文档格式.docx_第13页
第13页 / 共33页
c语言课程设计报告Word文档格式.docx_第14页
第14页 / 共33页
c语言课程设计报告Word文档格式.docx_第15页
第15页 / 共33页
c语言课程设计报告Word文档格式.docx_第16页
第16页 / 共33页
c语言课程设计报告Word文档格式.docx_第17页
第17页 / 共33页
c语言课程设计报告Word文档格式.docx_第18页
第18页 / 共33页
c语言课程设计报告Word文档格式.docx_第19页
第19页 / 共33页
c语言课程设计报告Word文档格式.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言课程设计报告Word文档格式.docx

《c语言课程设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《c语言课程设计报告Word文档格式.docx(33页珍藏版)》请在冰点文库上搜索。

c语言课程设计报告Word文档格式.docx

stdio、h>

main()

{intn,s;

for(n=1;

n<

=100;

n++)

{

s=1+n*(n+1)/2;

}

printf("

%d\n"

s);

【编译示图】

(示图中要有0error,0warning的提示)

【运行结果示图】

1、3、2设计任务2的实现过程

找出这个四位数的个、十、百、千位数,利用题目条件运用两个for循环最后求出结果。

{ints,a,b,c,d,e;

for(s=1000;

s<

10000;

s++)

a=s%10;

//gewei

b=s/10%10;

//shiwei

c=s/100%10;

//baiwei

d=s/1000;

//qianwei

for(e=30;

e<

100;

e++)

if(a>

b&

&

b>

c&

c>

d&

e*e==s)

printf("

1、3、3设计任务3实现过程

用三个for循环嵌套,再以一个if条件语句就可以输出最后结果。

{intx,y,z;

for(x=0;

x<

4;

x++)

for(y=0;

y<

y++)

for(z=0;

z<

7;

z++)

if(x+y+z==8)

%d红%d白%d黑\n"

x,y,z);

1、3、4设计任务4实现过程

先用if语句判断出平年与闰年,再用for循环输出最后结果。

voidmain()

intyear,moth,day;

inta[12]={31,28,31,30,31,30,31,31,30,31,30,31};

//平年2月28天365天

intb[12]={31,29,31,30,31,30,31,31,30,31,30,31};

//闰年2月29天366天

inti,j,num=0;

intx;

请输入年月日,\n"

);

scanf("

%d,%d,%d"

&

year,&

moth,&

day);

if((year%4==0)&

(year%100!

=0)||(year%4==0)&

(year%400==0))

{x=1;

else

{x=0;

if(x)

{for(i=0;

i<

moth-1;

i++)

num+=b[i];

num+=day;

else

for(j=0;

j<

j++)

num+=a[j];

今天就是第%d年的第%d天\n"

year,num);

1、3、5设计任务5实现过程

先输出所需数据与运算符,然后用switch语句进行判断,最后输出结果。

floata,b;

charc;

请输入数字a,运算符c,数字b:

\n"

%f%c%f"

a,&

c,&

b);

//charc;

//printf("

请输入运算符:

//scanf("

%c"

c);

switch(c)

case'

+'

:

%f\n"

a+b);

break;

-'

a-b);

*'

a*b);

/'

a/b);

default:

inputerror\n"

第2章数组与函数

2、2设计任务

1、有一个一维数组score[],内存放10个学生的成绩,要求编写三个函数分别求学生的平均成绩,求10个学生的最高分,求10个学生的最低分。

2、编写一个函数,将输入的一串字符中的小写字母转变成大写字母,并输出所有的大写字母。

3、输入10个学生姓名,按字典顺序将排在最前面的学生姓名输出。

即在字符数组中求最小字符串。

4、用函数求N*N的对角线的与。

其中的N就是用户通过键盘输入的任意值。

5、“数学黑洞”:

任意一个4位自然数,将组成该数的各位数字重新排列,形成一个最大数与一个最小数,之后两数相减,其差任为一个自然数。

重复进行上述运算,会发现一个神秘的数。

6、输入n值,打印边长为n的空心正六边形,其边有‘*’组成。

例如:

n=4时,图形如下:

****

**

****

2、3实现过程

2、3、1设计任务1实现过程

1.有一个一维数组score[],内存放10个学生的成绩,要求编写三个函数分别求学生的平均成绩,求10个学生的最高分,求10个学生的最低分。

用数组存放10个学生的成绩,然后用求出平均分、最高分、最低分。

#include<

intscore[10]={56,66,21,45,52,65,70,82,90,92};

inti,max,min;

aver()

{inti;

floataver=0,a=0;

for(i=0;

10;

a+=score[i];

aver=%f\n"

a/10);

maxain()

{

max=min=score[0];

for(i=0;

if(score[i]>

max)

max=score[i];

if(score[0]<

min)

min=score[i];

max=%d\nmin=%d\n"

max,min);

}

}

aver();

max=%d\nmin=%d\n"

2、3、2设计任务2实现过程

用gets()函数输入字符串,然后讲小写字母转换成大写使用puts()输出。

charch[20];

inti;

inputstring:

gets(ch);

20;

if(ch[i]>

=97&

ch[i]<

=122)

ch[i]-=32;

puts(ch);

第3章指针

3、2设计任务

1、已知一个整型数组a[5],其各元素值为4,6,8,10,12。

使用指针法求该数组元素之积。

2、100个围成一圈,从第1个人开始,每数到3的人出圈。

问最后一个出圈的人就是哪一个。

3、编写两个排序函数,要求一个函数完成从小到大排序,一个函数完成从大到小排序,并编写主函数完成:

①输入n个数;

②调用排序函数对n个数按从大到小排序并输出;

③调用排序函数对n个数按从小到大排序并输出;

3、3实现过程

3、3、1设计任务1实现过程

使用数组存放元素,然后用指针取出数值运算。

inta[5]={4,6,8,10,12};

int*p,s=1;

for(p=a;

p<

=a+4;

p++)

s=s*(*p);

3、3、2设计任务2实现过程

100个围成一圈,从第1个人开始,每数到3的人出圈。

使用for循环取出出圈人,然后用wile输出最后一个出圈的人。

#definen100

voidmain()

inta[n],i,quit_num,k;

n;

i++)//数组a存放原始编号

a[i]=i+1;

quit_num=0;

//出圈人数

i=0;

k=0;

while(quit_num<

n-1)//直到只剩下1人时

if(a[i]!

=0)k++;

if(k==3)

a[i]=0;

quit_num++;

}

i++;

if(i==n)i=0;

i++)

=0)

a[i]);

第4章综合设计题

4、1设计任务

1、运用C语言开发一个“小学生算术四则运算测试系统”。

该系统就是让计算机充当一位给小学生布置作业的算术老师,为学生出题并阅卷。

该系统要求实现下列功能:

①为小学生出题(分别进行+、-、*、/等不同运算)。

②学生做题后,进行评阅。

学生每做一题后,评阅给出“答题正确,很好”或“答题错误,重做”等信息。

③加、减、乘、除运算功能可以自由选择实现。

④运算数值可控制在两位数的四则运算范围内。

2、运用C语言开发一个“比赛评分系统”。

评委打分原则:

满分10分,评委打分后,去掉一个最高分与一个最低分,最后的平均分为参赛选手的最后得分(精确到小数点后两位)。

要求该系统实现以下功能:

①假设参赛人数为20人,评委为10人。

(有兴趣的同学可拓展为参赛人数为n人,评委为m人)。

并对参赛选手与评委分别编号,序号从1开始,顺序编号。

②选手按编号顺序依次参加比赛,统计最后得分。

③比赛结束,按从高分到低分每行5人依次打印选手的得分情况。

④公布选手获奖。

取一等奖1名,二等奖2名,三等奖3名。

3、王小二帮学生食堂编了一个买菜计价的程序,该程序可以显示菜单,让学生输入菜号来选择买什么菜,之后程序会报出您买了多少个菜,用了多少钱。

4、2设计过程

4、2、1设计任务实现过程

使用for循环嵌套输出每位选手的评分,然后用冒泡排序法排序,然后输出得奖人。

math、h>

{intmax(floatb[]);

intmin(floatb[]);

inti1,k1,j1,t,t1,b1;

floattt;

intii,jj;

intflag=1;

intk,m,i,b,j;

floatsum=0;

floata[10],c[20];

评分系统\n"

************************************************************\n"

for(b=0;

b<

b++)

%d号选手:

b+1);

=9;

%d号评委的评分就是:

"

i+1);

scanf("

%f"

a[i]);

sum+=a[i];

for(j=0;

c[j]=sum/10;

\n\n"

k=max(a);

m=min(a);

---------------------------------------\n"

\n---------------------------------------\n"

\n最高分就是:

%g最低分就是:

%g\n\n"

a[k],a[m]);

删除最高分最低分之后的总分就是:

%g\n\n"

sum-a[k]-a[m]);

这位选手的平均分就是:

(sum-a[k]-a[m])/10);

c[b]=(sum-a[k]-a[m])/10;

sum=0;

************************************************************\n\n\n\n"

for(b1=0;

b1<

b1++)

第%d位选手的分数就是:

%g\n"

b1+1,c[b1]);

for(ii=0;

ii<

ii++)

for(jj=0;

jj<

20-ii-1;

jj++)

if(a[jj]>

a[jj+1])//如果后面的数字大于前面的数字

tt=c[jj];

c[jj]=c[jj+1];

c[jj+1]=tt;

//就把两个数交换

%g"

c[jj]);

第一名%g"

c[0]);

第二名%g"

c[1]);

第三名%g"

c[2]);

intmax(floatb[])//最大值

{inti,k=0;

floatmax=b[0];

if(max<

b[i]){max=b[i];

k=i;

returnk;

intmin(floatb[])//最小值

inti,m=0;

floatmin=b[0];

for(i=1;

if(b[i]<

min){min=b[i];

m=i;

returnm;

4、2、2设计任务实现过程

运用C语言开发一个“小学生算术四则运算测试系统”。

用随机函数取出两个数1-100,用while循环判断就是否重做,用switch(选择加、减、乘、除运算,然后输出结果。

stdlib、h>

time、h>

intmain()

inta=0,b=1,x=0,y=0,i=0,x1=0,y1=0;

srand((unsignedint)time(NULL));

//设置当前时间为种子

while(a<

b)

a=rand()%100+1;

;

b=rand()%100+1;

请选择\n1加法运算,\n2减法运算,\n3乘法运算,\n4除法运算\n"

x);

x1=x;

switch(x1)

case1:

while(i==0)

{

printf("

请计算%d+%d="

a,b);

scanf("

y1);

y=y1;

if(y==(a+b))

{

printf("

答案正确\n"

i=1;

}

else

答案错误,重做\n"

i=0;

}

case2:

请计算%d-%d="

if(y==(a-b))

case3:

请计算%d*%d="

if(y==(a*b))

case4:

请计算%d/%d="

if(y==(a/b))

return0;

课程设计小结

通过这次C语言的课程设计,我明白了很多也知道了很多,更收获了很多。

在课程设计的过程中出现过困难,

  这个学期的课程设计已经结束了。

回想学习C语言的过程中,既有快乐又有烦恼,

  回顾这次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,在整整一个星期的日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

通过这次课程设计使我懂得了理论与实际相结合就是很重要的,只有理论与知识就是远远不够的,只有把所学的理论知识与实际相结

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

当前位置:首页 > 医药卫生 > 基础医学

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

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