C语言实训心得体会

时间:2019-05-12 16:12:23下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《C语言实训心得体会》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《C语言实训心得体会》。

第一篇:C语言实训心得体会

c语言实训心得

10903090113 李新程

在初学c语言的一个学期后,我们进行了c语言实训阶段,尝试编写一个比较复杂的程序系统。在为期两周的时间中,我们同组的同学共同的感受是:c语言实训和平时上课所接触的程序是有很大不同的,所经受的考验和克服的困难是平时所无法比拟的。好在同组的搭档们精诚合作,分工明确,有问题共同解决,攻克了c语言实训的复杂程序。在这里,我作为其中的参与者,感触良多。

在这次实训中,我对对c语言有了一个更深的了解认识,也对这个学期学的知识得到巩固,还尝试运行编程,每次运行程序成功,让我对下面的项目就充满信心。通过自己与同学合作编写程序,最终把最初的理论知识转化基本技能。这次的实训,使我对c语言的学习产生浓厚的兴趣。

还是这次实训,最令人激动的就是合作做项目,虽然那只是一个很小很小的项目。每天大家来得很早,大家在一起学习,取长补短,我们很好的在实训中长知识,提高我们的学习热情。实训中深切体会到了老师认真负责的伟大的精神和热情为同学指导的促学方式,虽然对有些时候老师没给我们指出解决问题的方法有些小抱怨,但是到了结束时才知道,这种教学让我们自己学会了自学,学会了去看懂别人的代码。更多是老师给的感动,每天在我们来之前就到了教室,在讲课中海给我们分享他在公司上班的一些心得和体会,还有那些我们应该注意的事项,这些是平时上课时无法学到的,是更深层次的巨大收获。通过这次实训,也使我们发现了许多问题。

在实训中,我们认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错误运行不出来,就会烦躁不安,觉得有些自暴自弃或者抱怨项目的变态,以后要克服,尽量保持一颗良好的心态,学好c语言,也学好用c语言编写一个按要求的系统。

还有就是对于未来,近程就是下学期,我觉得我还有许多方面需要提高。首先我要继续学习好c语言的基础知识,然后能在电脑上熟练的运用。然后每天都能写一些程序,上网时候多看一些优秀的教程和优秀的代码。遇到问题时多和同学讨论,并且多弄出几套方案,多锻炼自己结局问题的能力和与同学合作的能力。

总之,这一切都成为我记忆里面的一个篇章,更是在c语言编程上的一个里程碑。篇二:c语言实训总结

c语言实训总结

这个星期,我们迎来了c语言实训——一次至为重要的实训。在这个星期里,同学们都很认真的做着那20多道实训题目,遇到不懂的互相请教,或请问老师。非常感谢老师对我们的帮助,这次实训使我受益匪浅,收获了很多。通过c语言实训,让我加深了对c语言的了解,而不只是单单的在课本中学到的那些理论,平时乏味的课程,通过自己动手亲自编写,变的生动有趣,而在自己动手的过程中,出现的问题很多,比理论要难的多,当一个程序写完以后,经常会有很多错误而没法解决。不过,通过几天的实训,逐渐积攒了一些经验,有些错误可以很快就看出来。

这次实训有很大的收获,让我对c语言有了更深的认识,平时在课堂上学到的东西可以自己动手编写,将其转化成一些实用的技能。如果是一个程序写完一处错误也没有,会有种成就感,于是兴趣就来了,兴趣来了,自然学的东西也就多了,能把理论变成实际的技能,让我对c语言有了浓厚的兴趣和更深层的认识。c语言是一个有序的学习,学了最基本的替换,然后扩展到循环,嵌套,条理很清楚,不是一个零散的知识,实际上所有的课程都如此,不过通过实训我也知道了自己的不足,存在的很多问题。比如自己写的写的小程序出了问题,不会解决了就叫老师帮忙,虽然说一定意义上增加了师生之间的感情,但是会养成一种依赖的心理,碰到问题了第一个想到的是求助而不是自己独立解决,所以以后要多多锻炼自己的信心和增加自己的能力,争取做到老师不在身边的时候也可以完成一些简单的程序编写与错误排除。还有自己的基础知识不扎实,遇到的问题,没有很好的逻辑思维,亲自编写一个陌生的程序的时候会有种无法下手的感觉,找不到突破口。通过实训,逐渐理清了顺序,对于简单的程序和一些相对比较繁琐的嵌套,循环,不在是看着一头雾水。其实只要理清了思路,把基础知识掌握了,然后有条不紊的分析,一步一步理解,c语言还是很有意思的课程。自己亲自动手编写程序让我增加了对c语言程序开发环境的了解,在上课的时候老师就讲,学习c语言最重要的是学习c语言的逻辑思维,不管以后从事什么行业,学习c语言都对自己的职业很有帮助,如果是从事编程工程工作的话。当初在初步接触c语言的时候,看着一堆“奇形怪状”的符号,觉得甚是无聊,通过这次实训,摆脱了那种似懂非懂的状态!感谢学校安排这次实训和老师的耐心讲解,让我学到了很多知识,在实训过程中,同学之间的相互探讨,老师的循循善诱,最终让我们达到了举一反三的效果,在学知识的同时,也增加了同学老师之间的感情。希望以后还会有更多类似的实训课程,在有限的大学时间内学到更多的实用技能,为以后的工作打下一个良好的基础。

这次实训似乎是对我巨大的考验,程序在不慌不忙的进行着,按照我自身的进度,提前完成是没有问题的,但是很多客观条件让我不得不在最后的时间里才上交的作业。每当我把程序写完以后,却由于每一台电脑的识别格式不一样而导致我所写的文件一次次的被损坏,尽管这样,我仍然没有放弃,最后还赶在截止时间到来之前上交了我的作业!这一次编写大作业的程序又让我感受到学程序可以锻炼缜密的思维了。因为平时练习的都是小程序,所以句段比较少,一些错误都很容易被检查出来,但是这次实训却是上百段的语句,难以检查,似乎也没有经验去怎么检查,那一刹那感觉到很急,但又不知如何是好,可是又不轻易的向老师询问,因为好像蛮简单,相信自己能够检查出来,所以我一般都是独立思考的完成的,只有少部分是在老师和与同学讨论下完成的。在编写程序中,真的是细节决定成败,因为不管程序的语句是多是少,但是只要有一条语句或语法不正确,就不能使程序得到所需要的结果。没能够使自己编写出来的程序等到想要的结果,意味着这是一个不理想的程序,对于本次编写来说则是失败的。

最后,非常感谢学校给我们这次实训的机会。极高的锻炼了我们的逻辑思维能力。人非生而知之,虽然我们现在的知识结构还很差,但是我们知道要学的知识,一靠努力学习,二靠潜心实践。没有实践,学习就是无源之水,无本之木。在剩下的时间里,我们会更加努力的学习。篇三:c语言上机实验心得

c语言上机实验心得

在科技高度发展的今天,计算机在人们之中的作用越来越突出。而c语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好c语言,这对我们以后的发展是十分重要的。

说到这,上机实验当然就是一个必不可少的环节了,c语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。

通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了c语言那就大错特错了。

我主要存在以下的这些缺点:

1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。而在最后

输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。

2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解

题了。

3、4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够

深刻。

5、6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在一点问题。

为了能更好地学好c语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。

实验中我深刻意识到完成程序的编写,决不意味着万事大吉。认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。所以程序的调试是一个技巧性很强的工作,它可能比编一个程序耗时更

多。由此可看出上机实践的重要性。

通过本次c语言上机实验,我对这个介于人类与非人类之间的计算机编程语言有了一定的体验。编程的时候有因为顺利编出程序而开心过、有因为做得比人家慢而郁闷过、有因为不知从何入手而无奈过、有因为不知错出在哪而彷徨过??但随着练习的增多,我对c语言比以前熟了很多,不再只是纸上谈兵,我都有能力独立做出一些程序,可能对于一些“高手来说这不算什么,或者他们早就会了,但我依然觉得很开心,因为我跟我自己比是进步了。

当然,我还得感谢老师的指导与帮助,如果没有老师和其他同学的指点,我可能对c语言还是一筹莫展,在实验中遇到的大大少少的问题与所犯过的错误将是我以后的要加以注意的地方与认真审查的部分,为我奠定坚固的基石。伴随着学习的深入,我发现高深的东西还有很多很多,不懂不熟的知识还有很多,所以我不能停步,对c语言,我以后会更加努力学习的。篇四:c语言实训心得

c语言实习心得

两周的上机实习结束了,在这段时间内,我的c语言知识得到了温习,编程能力得到了很大的提高,我觉得这次实习很重要,而且是恰逢其时,当然通过自己编程的过程,也有了一些心得:

编程要的是正确的结果,体会的是艰辛的过程,收获的是好心情。

首先编程的时候你不能觉得这是一个繁琐的过程,在遇到出错的时候要有信心解决,不要害怕出错,不能忽略细节,尤其是对标点以及输入输出函数,要正确使用。其次,编程要有一个扎实的知识储备,没把课本看好,没把例题看好,不会编出正确的程序,同时,如果不多看程序,不断吸收别人的编程思想,就不会编出精彩的程序;当然也不能忽略与别人讨论与请教,在这过程中,我们可以相互交流编程想法,找到解决问题的最佳路径,这种团结协作的精神也是必须要有的。

两周很短,编程的过程却很漫长,思考,编程,改错,运行,这就是编程的感觉。感谢帮助我,还有一起讨论问题的同学,感觉老师细心的指导,在遇到小问题的时候,他也是很耐心的解答,感谢这次上机机会,让我重新温习了c语言,也让我对明年的等级考试更有信心。在初学c语言的一个学期后,我们进行了c语言实训阶段,尝试编写一个比较复杂的程序系统。在这次实训中,我对对c语言有了一个更深的了解认识,也对这个学期学的知识得到巩固,还尝试运行编程,每次运行程序成功,让我对下面的项目就充满信心。通过自己与同学合作编写程序,最终把最初的理论知识转化基本技能。这次的实训,使我对c语言的学习产生浓厚的兴趣。

通过这次实训,也使我们发现了许多问题。

在实训中,我们认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错误运行不出来,就会烦躁不安,觉得有些自暴自弃或者抱怨项目的变态,以后要克服,尽量保持一颗良好的心态,学好c语言,也学好用c语言编写一个按要求的系统。

一年来,我们已经学习了vb语言和c语言,在应用这些语言的过程中,我们的逻辑思维得到了加强,更重要的是我们把在数学上学习到的算法应用到计算机程序中,通过分析问题,调查研究,最终解决问题。尽管每次解决问题的过程不会都很顺利,尤其是在出错的时候总是很难解决那些很细微的错误,比如一个符号打错,或者漏掉一个标点,检查起来都会很麻烦,但是,每次成功的运行,得到的不仅仅是一个正确的结果,更多的是体会到了过程,有了一种成就感,特别是c语言,最能给我这种感觉。

还有就是对于未来,近程就是下学期,我觉得我还有许多方面需要提高。首先我要继续学习好c语言的基础知识,然后能在电脑上熟练的运用。然后每天都能写一些程序,上网时候多看一些优秀的教程和优秀的代码。遇到问题时多和同学讨论,并且多弄出几套方案,多锻炼自己结局问题的能力和与同学合作的能力。

总之,这一切都成为我记忆里面的一个篇章,更是在c语言编程上的一个里程碑。篇五:c语言实训心得

c语言实训心得

在本学期学习c语言将近一个学期后,我们进行了c语言实训,做了一个比较复杂、功能较全的学籍管理系统。虽然实训为期不长,但对我c语言水平的提高和对c的认识理解有很大帮助。

在这次实训中,我对c语言有了一个更深的了解认识,也使我这个学期学的知识得到了巩固。虽然在实训中遇到了许多的困难,比方说一开始在文件方面的知识比较薄弱,在对输入的数据保存、已输入条数的统计方面做得不足。但经过自己对文件内容的学习和向他人的请教,在这方面的知识得到补充,问题也得到了解决。在这次实训中,当自己每次解决一个问题时,当自己经过多次调试、修改使程序得以运行时,自己心中那份自信、满足、惬意感油然而生。经过这次实训,使我加强了对c语言的兴趣。

同时在这次实训中,也使我发现了许多的问题。

在实训中,我认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错误运行不出来,就会烦躁不安,觉得有些自暴自弃,以后要克服,尽量保持一颗良好的心态,学好c语言,也学好用c语言编写一个按要求的系统。

同时这次实训也使我更加深化了c语言学习方法。算法是程序的灵魂,在我们每遇到一个比较复杂的编程问题时,我们应该先写出该问题解决的算法,然后再去实现编代码。做到了这样,问题才能更快地解决。软件开发少不了合作,只有合作才能共同提高,只有互补才能取长补短,共同进步。

通过这次实训,我也认识到自己有许多的方面需要改进和有待提高。

对于以后,我会从以下几方面继续努力:

1、加强对算法的学习,达到精通一些基本算法的水平。

2、编程多加强实践,多上机学习。

3、打好基础,扎实功底,注重基础理论学习,不好高骛远。

4、加强和同学的合作,遇到问题多讨论,多寻找解决问题的方法,总之,这一切将对我c语言的学习有很大帮助。

第二篇:C语言实训

湖北轻工职业技术学院 《C语言程序设计》实验报告

实验十一:函数

班 级: ___________10计管_________________ 姓 名: ___________胡高______________ 学 号: ___________1003011138________________ 日 期: ____________2011-5-29________________

一、实验目的和要求

1、理解数组引入的意义及作用;

2、掌握一维数组的基本思想和基本用法;

3、掌握使用一维数组的基本算法:排序与查找。

二、实验主要仪器和设备 计算机一台,Turbo C环境。

三、实验内容

请将该实验报告重新命名为“实验11-学号[姓名]”,如“实验11-66[张三]”

1、P145 填空题2(2)

2、P145 上机操作题 3(5)

四、实验原始纪录 实验1 程序的设计界面。(Alt+PrintScreeninclude SysRq拷贝当前窗口)

程序代码。(此处写代码,不是图片。

#include void main(){

void swap();

extern int a,b;

a=3;b=10;

swap();

printf(“a=%d,b=%dn”,a,b);

}

int a,b;

void swap()

{

int temp;

temp=a;a=b;b=temp;

}

实验2 程序的设计界面。

程序代码。

五、实验结果及分析

实验1运行结果图。

实验2运行结果图。

六、实验总结与思考(主要写一些在实验过程中,遇到的问题、所犯的错误,以及是如何发现纠正的。大约100至200字左右。)

本次试验的内容是考察数组的引用、基本算法等,但是总体感觉有点问题。有的地方不知道如何下手

第三篇:c语言实训

目 录

特别注意,打开视图菜单-文档结构图观察文档结构。目录由WORD菜单中插入-引用-目录自动生成并更新,不需要手工生成菜单。

本模板仅说明格式,内容由指导老师决定,不用按这份目录内容编写实训报告。

具体目录见文档要求。以下部分仅供参考。

目 录........................................................................................................................1

一、实训的目的与要求................................................................................................1

二、题目说明................................................................................................................2

三、总体设计................................................................................................................2

3.1.软件模块结构图...........................................................................................2 3.2.程序流程图...................................................................................................3

四、详细设计和实施....................................................................................................3

4.1 XXXX模块.....................................................................................................4.2

4.3

五、遇到的问题和解决方法........................................................................................4

六、实训总结................................................................................................................4

七、参考文献................................................................................................................4 附录(源程序代码)....................................................................................................5

一、实训的目的与要求

(正文为宋体,五号字 行间距为21)中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国

二、题目说明

(正文为宋体,五号字 行间距为21)题目参照任务书中有关描述

三、总体设计

3.1.软件模块结构图(以下图仅供样式参考)

图1-1 软件模块结构图

3.2.程序流程图(以下图仅供样式参考):

四、详细设计和实施

(正文为宋体,五号字 行间距为21)4.1 模块1 ………(可以写一些关键程序代码,另外截一些界面图并说明实现了什么功能,以证明功能实现了)每一个界面,必须有(1)功能简介(2)界面截图一张(3)界面关键代码和描述 每一个界面说明作为独立的一小节。(在文档说明中有样例)

五、遇到的问题和解决方法

(正文为宋体,五号字 行间距为21)1. 2. 3. …………

六、实训总结

(正文为宋体,五号字 行间距为21)

七、参考文献

[1] 权明富,齐佳音,舒华英.客户价值评价指标体系设计[J].南开管理评论,2004,7(3):17-18.[2] 刘小洪,邹鹏.商业银行客户关系价值管理模型研究[J].管理科学,2005,18(3):57-60.附录(源程序代码)

第四篇:C语言实训

第一天的题目: 求两个整数之和。

#include main(){ int a,b,sum;a=3;b=5;sum=a+b;printf(“sum is %d/n”,sum);} 求两个整数中的较大者。#include “stdio.h” void main(){int max(int,int);int a,b,c;scanf(“%d,%d,”,&a,&b);c=max(a,b);printf(“max=%d”,c);} int max(int x,int y){ int z;if(x>y)z=x;else z=y;return(z);}

求1×3×5×7×9×11 #include int main(){ int i = 1,sum = 1;while(i <= 11){

sum = sum*i;

i = i+2;}

printf(“%d”,sum);return 0;} 有50个学生,要求将成绩在80分以上的学生的学号和成绩输出。

#include main(){

int i;

int a[50];

for(i=0;i<50;i++)

{

scanf(“%d”,&a[i]);

if(a[i]>80)

printf(“%d”,a[i]);

} }

判定2000—2500年中的每一年是否闰年,并将结果输出。

#include int main(){

int y;

y=2000;

while(y<=2500)

{

if(((y%4 == 0)&&(y%100!= 0))||(y%400 == 0))

printf(“%d 年是闰年n”,y);

else printf(“%d 年不是闰年n”,y);

y=y++;} } 求111111 23499100#include void main(){ int sign=1;float deno=2.0,sum=1.0,term;while(deno<=100){

sign=-sign;

term=sign/deno;

sum=sum+term;

deno=deno+1;} printf(“%fn”,sum);} 给出一个大于或等于3的正整数,判断它是不是一个素数。

#include void main(){

int i,n,mark=0;

scanf(“%d”,&n);

for(i=2;i < n/2+1;i++)

{

if(n%i==0)

{

printf(“%d不是素数”,n);

mark=1;

break;

}

}

if(mark==0)

printf(“%d是素数”,n);} 求5!#include main(){ int i,n;long fact=1;printf(“Input n:”);scanf(“%d”,&n);for(i=1;i<=n;i++)fact*=i;printf(“%d!=%1dn”,n,fact);} 给定一个大写字母,要求用小写字母输出。

#include void main(){ char c;c=getchar();if(c>='A'&&c<='Z')putchar(c+'a'-'A');} 输入两个实数,按代数值由小到大的顺序输出这两个数。

#include void main(){

float a,b,t;scanf(“%f %f”,&a,&b);if(a>b){ t=a;a=b;b=t;} printf(“%5.2f,%5.2fn”,a,b);

} 输入3个数a,b,c,要求按由小到大的顺序输出。

#include void main(){ int a,b,c,t;printf(“please input three numbersn”);scanf(“%d%d%d”,&a,&b,&c);if(a>b){ t=a;a=b;b=t;} if(a>c){ t=a;a=c;c=t;} if(b>c){ t=b;b=c;c=t;} printf(“%d<%d<%dn”,a,b,c);} 输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。

#include main(){

char zhong,guo;

scanf(“%c”,&zhong);

if(65<=zhong&&zhong<=90)

{

guo=zhong+32;

printf(“%c”,guo);

}

else

printf(“%c”,zhong);}

1(x0)1编一程序,输入一个x值,要求输出相应的y值。y0(x0)

1(x0)#include void main(){

int x,y;

printf(“请输入x:”);

scanf(“%d”,&x);

if(x<0)

y=-1;

else if(x=0)

y=0;

else

y=1;

printf(“y=%d”,y);} 要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为70~84分,C等为60~69分,D等为 60分以下。成绩的等级由键盘输入。#include void main(){ char grade;printf(“等级:”);scanf(“%c”,&grade);switch(grade){ case 'A': printf(“90~100n”);break;case 'B': printf(“80~89n”);break;case 'C': printf(“70~79n”);break;case 'D': printf(“60~69n”);break;case 'E': printf(“不合格n”);break;default: printf(“error!n”);break;} }

5写一程序,判断某一年是否闰年。#include int main(){

int a;

scanf(“%d”,&a);

if(a%4==0&&a%100!=0||a%400==0)

printf(“是闰年”);

else printf(“不是闰年”);} 运输公司对用户计算运输费用。路程(s km)越远,每吨·千米运费越低。标准如下:

s < 250

没有折扣

250≤s < 500

2%折扣

500≤s < 1000

5%折扣

1000≤s < 2000

8%折扣

2000≤s < 3000

10%折扣

3000≤s

15%折扣 #include int main(){

int c, s;

float p, w, d, f;

scanf(“%f %f %d”, &p, &w, &s);

if(s >= 3000)c =12;

else c = s / 250;

switch(c)

{

case 0 : d = 0;break;

case 1 : d = 2;break;

case 2 :

case 3 : d = 5;break;

case 4 :

case 5 :

case 6 :

case 7 : d = 8;break;

case 8 :

case 9 :

case 10:

case 11: d = 10;break;

case 12: d = 15;break;

}

f = p * w * s *(1-d / 100);

printf(“freight =%15.4fn”,f);} 全班有50个学生,用循环语句统计各学生三门课的平均成绩。#include void main(){ int score[9];int total[3];int average[3];int i;for(i=0;i<9;i++)scanf(“%d”,score+i);for(i=0;i<3;i++){ total[i]=score[i*3]+score[i*3+1]+score[i*3+2];average[i]=total[i]/3;printf(“学生%d的平均分:%dn”,i,average[i]);} } 求1+2+3+…+100 #include main(){ int i=1,sum=0;while(i<=100){ sum=sum+i;i++;} printf(“sum=%dn”,sum);} 在全系1000学生中,征集慈善募捐,当总数达到10万元时就结束,统计此时捐款的人数,以及平均每人捐款的数目。#include int main(){ int s;unsigned double a=0;unsigned double m;for(s=1;s<=1000;s++){ scanf(“%uf”,&m);if((a+m)<100000.00)a=a+m;else { a=a+m;printf(“捐钱人数为%d,平均钱数为%.2fn”,s,(double)a/s);break;} }

return 0;} 要求输出100~200之间的不能被3整除的数。#include void

main(){

int

n;

for(n=100;n <=200;n++)

{

if(n%3!=0)

printf(“%d

”,n);}

printf(“n ”);}

第二天的题目:

1 输出以下4*5的矩阵。

10 15 20 #include void main(){ char *p[5]={“ 1 2 3 4 5”,“ 2 4 6 8 10”,“ 3 6 9 12 15”,“ 4 8 12 16 20”};for(int i=0;i<5;i++){

printf(“%sn”,p[i]);} } 用

41131517

公式求 

的近似值,直到发现某一项的绝对值小于10-6 为止(该项不累计加)。

#include #include int main(){ int s;double t,n,pi;s=-1,t=1,n=1.0,pi=0;for(t=1;fabs(t)>=1e-6;n=n+2){

s=-s;

t=s/n;

pi=pi+t;} pi=pi*4;printf(“%.6fn”,pi);return 0;}

 求费波那西(Fibonacci)数列的前40个数。这个数列有如下特点:第1、2两个数为1、1。从第3个数开始,该数是其前面两个数之和。即: F11F21FFFn1n2n(n1)(n2)

(n3)#include int main(){ int f1=1,f2=1,f3;int i;printf(“%12dn%12dn”,f1,f2);for(i=1;i<=38;i++){

f3=f1+f2;

printf(“%12dn”,f3);

f1=f2;

f2=f3;} return 0;}

输入一个大于3的整数n,判定它是否素数(prime,又称质数)。#include int main(){ int a,b;scanf(“%d”,&a);b=a;while(--b>1)

if(a%b==0)

{

printf(“此数不是素数n”);

return 0;

}

printf(“此数是素数n”);

return 0;} 求100~200间的全部素数。#include #include void main(){

int i,k,sk,flag,m=0;

for(k=100;k<=200;k++)

{

sk=(int)sqrt(k);

flag = 1;

for(i=2;i<=sk;i++)

{

if(k%i==0)

{

flag=0;

break;

}

}

if(flag==1)

{

m++;

printf(“%5d”,k);

}

}

if(m%12==0)

printf(“n”);

printf(“total:%5dn”,m);} 对10个数组元素依次赋值为0,1,2,3,4,5,6,7,8,9,要求按逆序输出。#include int main(){ int arr[10] = {0,1, 2,3,4,5,6,7,8,9}, i,j,t;for(i=0;i<10;i++)for(j=i+1;j<10;j++)if(arr[i] < arr[j]){ t = arr[i];arr[i] = arr[j];arr[j] = t;} for(i=0;i<10;i++)printf(“%d,”, arr[i]);return 0;} 用数组处理求Fibonacci数列问题

#include #include int main(){

int i;

int f[40]={1,1};

for(i=0;i<40;i++)

{

f[i]=f[i-2]+f[i-1];

}

for(i=0;i<40;i++)

{

if(i%5==0)

printf(“/n”);

printf(“%12d”,f[i]);

}

return 0;} 有10个地区的面积,要求对它们按由小到大的顺序排列(采用起泡法)。#include void main(){ int a[10];int i,j,temp;printf(“请输入10个数:”);for(i=0;i<10;i++)

scanf(“%d”,&a[i]);for(i=0;i<10;i++)

for(j=i+1;j<10;j++)

if(a[i]>a[j])

{

temp=a[i];

a[i]=a[j];

a[j]=temp;

} for(i=0;i<10;i++)

printf(“%dt”,a[i]);} 将一个二维数组行和列的元素互换,存到另一个二维数组中。

14123b25a456 36#include main(){ static int a[2][3]={{1,2,3},{4,5,6}};static int b[3][2],i,j;printf(“array a:n”);for(i=0;i<2;i++){

for(j=0;j<3;j++)

{

printf(“%5d,a[i][j]”);

b[j][i]=a[i][j];

}

printf(“n”);} printf(“array b:n”);for(i=0;i<3;i++){

for(j=0;j<2;j++);

printf(“%5d”,b[i][j]);

printf(“n”);} } 有一个3×4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。

#include int main(){

int a[3][4],max,i,j;

int x=0,y=0;

printf(“请输入矩阵的数值!n”);

for(i=0;i<3;i++)

for(j=0;j<4;j++)

scanf(“%d”,&a[i][j]);

max=a[0][0];

for(i=0;i<3;i++)

for(j=0;j<4;j++)

if(max

{

max=a[i][j];

x=i;

y=j;

}

printf(“矩阵中最大的元素为:%dn”,max);

printf(“行号为:%d,列号为:%d”,x,y);} 输出一个已知的字符串。#include main(){ char a[4];scanf(“%c,%c,%c”,&a[0],&a[1],&a[2]);a[3]='';printf(“%s”,a);} 输出一个菱形图。#include void main(){

int h;

printf(“输入高度-》 ”);

scanf(“%d”,&h);

for(int i=1;i<=h;i++)

{

for(int a=1;a<=(h-i);a++)

{

printf(“ ”);

}

for(int b=1;b<=(i*2-1);b++)

{

printf(“*”);

}

printf(“n”);

}

for(int j=h-1;j>=1;j--)

{

for(int a=1;a<=(h-j);a++)

{

printf(“ ”);

}

for(int b=1;b<=(j*2-1);b++)

{

printf(“*”);

}

printf(“n”);

} } 输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。#include int main(){

char string[81],c;int i,num=0,word=0;gets(string);

for(i=0;

(c=string[i])!= ' ';i++)if(c==' ')word=0;

else

if(word==0){

word=1;num++;}

printf(“There

are

%d

word

in

the

line.n ”,num);getchar();return

0;} 有3个字符串,要求找出其中最大者。#include #include void

main(){

char

string[20];char

str[3][20];int

i;for(i=0;i <3;i++)gets(str[i]);

if(strcmp(str[0],str[1])> 0)strcpy(string,str[10]);

else

strcpy(string,str[1]);if(strcmp(str[2],string)> 0)strcpy(string,str[2]);

printf(“nthe

largest

string

isn%sn ”,string);

} 15 输出以下的结果,用函数调用实现。

******************

How do you do!

****************** #include void fun1(void){printf(“**************n”);} void fun2(void){printf(“* How do you do!n”);}

main(){fun1();fun2();fun1();} 输入两个整数,要求输出其中值较大者。要求用函数来找到大数。#include int main(){ int max(int,int);

int a,b,c;

printf(“please enter a and b:”);

scanf(“%d,%d”,&a,&b);

c=max(a,b);

printf(“%d,%d,max=%dn”,a,b,c);

return 0;}

int max(int x,int y){ int z;

if(x>y)z=x;

else

z=y;

return(z);} 输入两个实数,用一个函数求出它们之和。#include int main(){ float add(float x,float y);float a,b,c;printf(“please enter a and b:”);scanf(“%f,%f”,&a,&b);c=add(a,b);printf(“sum is %f.n”,c);return 0;} float add(float x,float y){ float z;z=x+y;return(z);}

输入4个整数,找出其中最大的数。用函数的嵌套调用来处理。#include void main(){

int max_4(int a,int b,int c,int d);

int a,b,c,d,max;

printf(“Please enter 4 interger numbers:”);

scanf(“%d %d %d %d ”,&a,&b,&c,&d);

max=max_4(a,b,c,d);

printf(“max=%d n”,max);}

int max_4(int a,int b,int c,int d)

{int max_2(int,int);

int m;m=max_2(a,b);

m=max_2(m,c);

m=max_2(m,d);

return(m);

} int max_2(int a,int b)

{if(a>b)

return a;

else return b;

} 有5个学生坐在一起

 问第5个学生多少岁?他说比第4个学生大2岁  问第4个学生岁数,他说比第3个学生大2岁  问第3个学生,又说比第2个学生大2岁  问第2个学生,说比第1个学生大2岁  最后问第1个学生,他说是10岁  请问第5个学生多大(递归调用)

#include int main(){ int age(int n);printf(“NO.5,age:%dn”,age(5));return 0;} int age(int n){ int c;if(n==1)

c=10;else

c=age(n-1)+2;return(c);} 用递归方法求n!。#include float fac(int n)

{

float f;

if(n<0)

{

printf(“n<0, dataerror!”);

}

else if(n==0||n==1)

f=1;

else

f=fac(n-1)*n;

return f;} int main(){ int n;scanf(“%d”,&n);printf(“%.0fn”,fac(n));return 0;}

第3天的题目: 输入10个数,要求输出其中值最大的元素和该数是第几个数。#include #include int main(int argc, char *argv[]){

int i=1,max,temp,n=1;

while(i<=10)

{

if(i==1){

scanf(“%d”,&max);

}

else

{

scanf(“%d”,&temp);

if(temp>max)

{

max = temp;

n=i;

}

}

i++;

}

printf(“最大数%d 位置%dn”,max,n);

system(“pause”);

return 0;} 有一个一维数组score,内放10个学生成绩,求平均成绩。#include int main(){ float average(float array[10]);float score[10],aver;int i;printf(“input 10 scores:n”);for(i=0;i<10;i++)

scanf(“%f”,&score[i]);printf(“n”);aver=average(score);printf(“%5.2fn”,aver);return 0;} float average(float array[10]){ int i;float aver,sum=array[0];for(i=1;i<10;i++)

sum=sum+array[i];aver=sum/10;return(aver);} 有两个班级,分别有35名和30名学生,调用一个average函数,分别求这两个班的学生的平均成绩。#include int main(){ float average(float array[],int n);float score1[5]={98,97,91,78,66};float score2[10]={67,78,89,99,68,78,77,85,59,88};printf(“%6.2fn”,average(score1,5));printf(“%6.2fn”,average(score2,10));return 0;} float average(float array[],int n){ int i;float aver,sum=array[0];for(i=1;i

#include #define N void sort(int array[],int n){

int i,j,k,t;

for(i=0;i

{

k=i;

for(j=i+1;j

if(array[j]

k=j;

t=array[k];

array[k]=array[i];

array[i]=t;

} }

int main(){

int i,array[N];

printf(“input a number:”);

for(i=0;i<=N-1;i++)

scanf(“%d”,&array[i]);

sort(&array[0], N);

for(i=0;i<=N-1;i++)

printf(“%d ”,array[i]);

return 0;} 有一个3×4的矩阵,求所有元素中的最大值。#include int main(){ int max_value(int array[][4]);int a[3][4]={{1,3,5,7},{2,4,6,8},{15,17,34,12}};printf(“max value is %dn”,max_value(a));return 0;} int max_value(int array[][4]){ int i,j,max;max=array[0][0];for(i=0;i<3;i++)

for(j=0;j<4;j++)

if(array[i][j]>max)

max=array[i][j];

return(max);} 有一个一维数组,内放10个学生成绩,写一个函数,当主函数调用此函数后,能求出平均分、最高分和最低分。#include float max=0,min=0;int main(){ float average(float array[],int n);float ave,score[10];int i;printf(“please enter 10 scores:n”);for(i=0;i<10;i++)

scanf(“%f”,&score[i]);ave=average(score,10);printf(“max=%6.2fn min=%6.2fn average=%6.2fn”,max,min,ave);

return 0;} float average(float array[],int n){int i;float aver,sum=array[0];max=min=array[0];for(i=1;imax)max=array[i];else if(array[i] int main(){

int fac(int n);int i;for(i=1;i<=5;i++)

printf(“%d!=%dn”,i,fac(i));return 0;} int fac(int n){

static int f=1;

}f=f*n;return(f);调用函数,求3个整数中的大者。#include int main(){ int max();extern int a,b,c;scanf(“%d %d %d”,&a,&b,&c);printf(“max is %d”, max());return 0;} int a,b,c;int max(){ int m;m=a>b?a:b;if(c>m)m=c;return(m);} 给定b的值,输入a和m,求a*b和am的值。#include int a;int main(){ int power(int);int b=3,c,d,m;scanf(“%d,%d”,&a,&m);c=a*b;printf(“%d*%d=%dn”,a,b,c);d=power(m);printf(“%d**%d=%dn”,a,m,d);return 0;} extern a;int power(int n){ int i,y=1;for(i=1;i<=n;i++)y*=a;

return(y);} 通过指针变量访问整型变量。#include “stdio.h” void main(){

int a,b;

int *pointer_1,*pointer_2;

a=100;b=10;

pointer_1=&a;

pointer_2=&b;

printf(“%d,%dn”,a,b);

printf(“%d,%dn”,*pointer_1,*pointer_2);} 输入a和b两个整数,按先大后小的顺序输出a和b。

 解题思路:用指针方法来处理这个问题。不交换整型变量的值,而是交换两个指针变量的值。#include main(){ int *p1,*p2,*p,a,b;

scanf(“%d,%d”,&a,&b);

p1=&a;p2=&b;

if(a

{p=p1;p1=p2;p2=p;}

printf(“na=%d,b=%dn”,a,b);

printf(“max=%d,min=%dn”,*p1, *p2);} 对输入的两个整数按大小顺序输出。现用函数处理,而且用指针类型的数据作函数参数。#include void max(int *a,int *b){ int n;if(*a<*b){

n=*a;

*a=*b;

*b=n;} } int main(void){ int a,b;int *n=&a,*m=&b;printf(“输入两个整数:n”);scanf(“%d%d”,&a,&b);max(n,m);printf(“%d

%dn”,a,b);return 0;} 对输入的两个整数按大小顺序输出。

 解题思路:尝试调用swap函数来实现题目要求。在函数中改变形参(指针变量)的值,希望能由此改变实参(指针变量)的值

#include swap(int *p1,int *p2){

int temp;

temp=*p1;

*p1=*p2;

*p2=temp;}

main(){

int a,b;

int *pointer_1,*pointer_2;

scanf(“%d,%d”,&a,&b);

pointer_1=&a;pointer_2=&b;

if(a

swap(pointer_1,pointer_2);

printf(“ %d,%d ”,a,b);}输入3个整数a,b,c,要求按由大到小的顺序将它们输出。用函数实现。#include void swap(int *x,int *y){int t=*x;*x=*y;*y=t;} int main(){int a,b,c;scanf(“%d%d%d”,&a,&b,&c);if(a

 解题思路:引用数组中各元素的值有3种方法:(1)下标法;(2)通过数组名计算数组元素地址,找出元素的值;(3)用指针变量指向数组元素  分别写出程序,以资比较分析。#include void main(){ int a[10];int i;for(i=0;i<10;i++)

scanf(“%d”,&a[i]);for(i=0;i<10;i++)

printf(“%d ”,a[i]);} 通过指针变量输出整型数组a的10个元素。

 解题思路:

用指针变量p指向数组元素,通过改变指针变量的值,使p先后指向a[0]到a[9]各元素。#include main(){ int *p,i,a[10];p=a;for(i=0;i<10;i++)scanf(“%d”,p++);printf(“n”);p=a;for(i=0;i<10;i++,p++)printf(“%d”,*p);}将数组a中n个整数按相反顺序存放

 解题思路:将a[0]与a[n-1]对换,……将a[4]与a[5]对换。#include int main(){ void inv(int x[ ],int n);

int i, a[10]={3,7,9,11,0,6,7,5,4,2};

for(i=0;i<10;i++)printf(“%d ”,a[i]);

printf(“n”);

inv(a,10);

for(i=0;i<10;i++)printf(“%d ”,a[i]);

printf(“n”);

return 0;} void inv(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;} } 用指针方法对10个整数按由大到小顺序排序。

 解题思路:

 在主函数中定义数组a存放10个整数,定义int *型指针变量p指向a[0]  定义函数sort使数组a中的元素按由大到小的顺序排列  在主函数中调用sort函数,用指针p作实参  用选择法进行排序

#include int main(){ void sort(int x[],int n);int i,*p,a[10];p=a;printf(“please enter 10 integer numbers:”);for(i=0;i<10;i++)

scanf(“%d”,p++);p=a;sort(p,10);for(p=a,i=0;i<10;i++){

printf(“%d ”,*p);

p++;} printf(“n”);return 0;}

void sort(int x[],int n){ int i,j,k,t;for(i=0;i

k=i;

for(j=i+1;j

if(x[j]>x[k])

k=j;

if(k!=i)

{

t=x[i];

x[i]=x[k];

x[k]=t;

}

} } 有一个班,3个学生,各学4门课,计算总平均分数以及第n个学生的成绩。

.#include“stdio.h” void InputScore(double s[][4]){ int i,j;

printf(“please input the score of three student:n”);

for(i=0;i<3;i++)

for(j=0;j<4;j++)

scanf(“%lf”,&s[i][j]);} double AllAverage(double *s,int m){double sum=0;int i;

for(i=0;i

sum=sum+*(s+i);return sum/(m*4);} void PrintNScore(double(*s)[4],int n){ int i;for(i=0;i<4;i++)printf(“%d”,*(*(s+n-1)+i));} void main(){

double score[3][4],ave;

int n;

InputScore(score);

ave=AllAverage(score[0],3);

printf(“average =%lfn”,ave);

printf(“please input the NO.of student who will be printed:n”);

scanf(“%d”,&n);

printf(“The score of the %dth student is:n”,n);

PrintNScore(score,n);

}.定义一个字符数组,在其中存放字符串“I love China!”,输出该字符串和第8个字符。

 解题思路:定义字符数组string,对它初始化,由于在初始化时字符的个数是确定的,因此可不必指定数组的长度。用数组名string和输出格式%s可以输出整个字符串。用数组名和下标可以引用任一数组元素。

#include int main(){ char string[]=“I love China!”;

printf(“%sn”,string);

printf(“%cn”,string[7]);

return 0;}。

第4天的题目:

1.输入一行字符,统计其中的英文字符、数字字符、空格及其它字符的个数。#include #include #define STOP '|' int main(void){ char c;char prev;long n_chars = 0L;int n_lines = 0;int n_words = 0;int p_lines = 0;int inword = 0;

printf(“Enter text to be analyzed(| to be quit):n ”);prev = 'n';while((c = getchar())!= STOP){

n_chars++;

if(c == 'n')

n_lines++;

if(!isspace(c)&&!inword)

{

inword = 1;

n_words++;

}

if(isspace(c)&& inword)

inword = 0;

prev = c;} if(prev!= 'n')

p_lines = 1;printf(“characters = %ld,word = %d,line = %d,”,n_chars,n_words,n_lines);printf(“partial lines = %dn”,p_lines);return 0;}

2.编程先输入某班30个学生某门课的成绩,对全班30个学生成绩进行由高到低排序,并打印输出排序结果,要求按照如下函数原型,用函数编程实现排序功能。#include

void sort(float score[],int n)

{

int i,j;

for(i=0;i

for(j=0;j

if(score[j]

{

float temp=score[j];

score[j]=score[j+1];

score[j+1]=temp;

}

}

void main()

{

float score[30];

int i;

printf(“Please enter the number and score:n”);

for(i=0;i<30;i++)

scanf(“%f”,&score[i]);

sort(score,30);

printf(“Sorted results:n”);

for(i=0;i<30;i++)

printf(“%f”,score[i]);

}

3.用户从键盘任意输入一个数字表示月份值n,程序显示该月份对应的英文表示,若n不在1~12之间,则输出“Illegal month”。#include int main(){

int n;

printf(“请输入n的值n”);

scanf(“%d”,&n);

switch(n)

{

case 1:printf(“Janunryn”);break;

case 2:printf(“Februaryn”);break;

case 3:printf(“Marchn”);break;

case 4:printf(“Apriln”);break;

case 5:printf(“Mayn”);break;

case 6:printf(“Junen”);break;

case 7:printf(“Julyn”);break;

case 8:printf(“Augustn”);break;

case 9:printf(“Septempern”);break;

case 10:printf(“Octobern”);break;

case 11:printf(“Novembern”);break;

case 12:printf(“Decembern”);break;

default:printf(“Illegal month”);

}

return 0;}

4.计算十个数据的平均值。#include void main(){ int a[10],sum=0,i=0;float b;printf(“输入10个数n”);for(;i<10;i++)scanf(“%d”,&a[i]);for(i=9;i>=0;i--)sum=sum+a[i];b=(float)sum/10;printf(“平均数=%fn”,b);}

5.编程实现从键盘输入一个字符串,将其字符顺序颠倒后重新存放,并输出这个字符串。(用字符数组实现)#include #include #define N 10 int main(void){ char a[N];int i,j;printf(“Input data:”);for(i=0;(a[i]=getchar())!='n';i++);a[i]='';

} printf(“输出的数据n”);for(j=i-1;j>=0;j--)printf(“%c”,a[j]);putchar('n');return 0;

6.从键盘任意输入一个4位数x,编程计算x的每一位数字相加之和(忽略整数前的正负号)。例如,输入x为1234,则由1234分离出其千位

1、百位

2、十位

3、个位4,然后计算1+2+3+4=10,并输出10。#include main(){ int a,b,c,d;int sum,i;printf(“输入一个四位数n”);scanf(“%d”,&i);a=i/1000;b=(i/10)%10;c=(i/100)%10;d=i%10;sum=a+b+c+d;printf(“%dn”,sum);}

7.输入20个学生的成绩,求出其中大于平均成绩学生的人数,并对20名学生成绩按从高到低进行排序。#include

int count1(float score[],int n)

{

int i,count=0;

float sum=0,avg;

for(i=0;i

sum+=score[i];

avg=sum/n;

for(i=0;i

if(score[i]>avg)count++;

return count;

}

void sort(float score[],int n)

{

int i,j;

for(i=0;i

for(j=0;j

if(score[j]

{

float temp=score[j];

score[j]=score[j+1];

score[j+1]=temp;

}

}

void main()

{

int i;

float score[20];

for(i=0;i<20;i++)

scanf(“%f”,&score[i]);

int COUNT=count1(score,20);

printf(“大于平均成绩学生的人数:%d”,COUNT);

sort(score,20);

for(i=0;i<20;i++)

printf(“%f”,score[i]);

}

224466...228.利用公式=133557ׄ前100项之积计算并打印值。#include “stdio.h” void main(){ float a=2,b=1;double num=1;int i;for(i=1;i<=100;i++){

num*=a/b;

if(i%2==0)a+=2;

else b+=2;}

num*=2;printf(“π=%.16lfn”,num);}

9.由键盘输入一个班的某课程的学生成绩,计算其平均分然后输出。#include int main(){ float sum=0,n;int i=0;do {

printf(“输入第%d个学生的成绩,输入负数结束”,i+1);

scanf(“%f”,&n);

if(n<0)

break;

sum+=n;

i++;} while(1);printf(“平均成绩为%.4fn”,sum/i);return 0;}

10.从键盘输入10个整型数据,放入数组a 中,求其最大值、最小值及其所在元素的下标位置并输出。#include int main(){

}

} printf(“最大值:%d 最大值所在位置:%dn最小值:%d 最小值所在位return 0;} if(a[i]

}

min_=a[i];minInd=i;int a[10],max_,min_,maxInd,minInd;int i;scanf(”%d“,&a[0]);max_=a[0];min_=a[0];maxInd=minInd=0;for(i=1;i<10;i++){

scanf(”%d“,&a[i]);if(a[i]>max_){

max_=a[i];maxInd=i;置:%dn”,max_,maxInd,min_,minInd);

11.下面的函数MyStrcmp()用于实现函数strcmp()的功能,将两个字符串s和t进行比较,要求将两个字符串中第一个不相同字符的ASCII码值之差作为MyStrcmp()函数的返回值。#include #include“string.h” int strcmpp(char *s,char *t){int la=strlen(s),lb=strlen(t),i=0;while(1){ if(s[i]!=''&&t[i]!=''){ if(s[i]>t[i]){return 1;break;} else if(s[i]

return 0;}

12.从键盘任意输入10个整数,用函数编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组。#include using namespace std;void func(){ int a[10];for(int i=0;i<10;i++)

cin>>a[i];int max=0;int min=0;for(i=0;i<10;i++){

if(a[max]

if(a[min]>a[i])min=i;} int t=a[max];a[max]=a[min];a[min]=t;for(i=0;i<10;i++){

cout<

int main(){ int score,level;char band;printf(“Input Score:”);scanf(“%d”,&score);level=score/10;switch(level){ case 10: case 9: band='A';break;case 8: band='B';break;case 7: band='C';break;case 6: band='D';break;default: band='E';break;} printf(“%d的等级为%cn”,score,band);system(“pause”);return 0;} 把1~50之间不能被7整除的数输出 #include main(){ int i;for(i=1;i<=50;i++)if(i%7!=0)

printf(“%d ”,i);} 交换函数两个参数的值 #include “Stdio.h” #include “Conio.h” void swap(int* x,int *y){ int t;t=*x;*x=*y;*y=t;}

main(){ int a,b;a=11,b=21;swap(&a,&b);

printf(“%d,%d”,a,b);getch();} 求数组元素中的最大元素和最小元素 #include

int *pmin,*pmax;int extreum(int a[],int n)

{

int i;

pmax=pmin=a;

for(i=0;i<=n;i++)

{

if(a[i]>*pmax)

pmax=&a[i];

else if(a[i]<*pmin)

pmin=&a[i];

}

return 0;}

main(){

int i;

int b[10];

printf(“enter 10 numbers:n”);

for(i=0;i<10;i++)

scanf(“%d”,&b[i]);

extreum(b,10);

printf(“n max=%d,min=%dn”,*pmax,*pmin);} 求3×4矩阵的转置

第五篇:C语言实训

#include #include #include #define N 100

struct student { char classname[40];int num;

char major[40];

char name[30];char class1[40];int score1;char class2[40];int score2;char class3[40];int score3;}stu[N];

void menu();void add();void search();void change();void deleted();void sort();void show();void back();void input();void output();

int main(void){ menu();void add();

void search();

void change();

void deleted();

void sort();

void show();

void back();

void input();void output();return 0;}//需要调用的函数

void menu(){ int n;printf(“nnnnnn”);do{

printf(“

printf(”

*n“);

printf(”

*n“);

printf(”

printf(“

*n”);

************欢迎使用学生信息管理系统************n“);

*

*

功能菜单************************************************n”);

*

printf(“

*

1.添加成绩表信息

*n”);

printf(“

*

2.查询成绩信息

*n”);

printf(“

*

3.修改成绩信息

*n”);

printf(“

*n”);

printf(“

*n”);

printf(“

*n”);

printf(“

*n”);

printf(“

*n”);

printf(“

*n”);

printf(“

*n”);

printf(“

printf(”

*

4.删除信息记录

*

5.排序成绩表信息

*

6.显示成绩表所有信息

*

7.从指定的文件中读入成绩表的信息

*

8.将成绩表的信息写入指定的文件中

*

9.退出学生信息管理系统

*

************************************************nn“);

请输入数字<1-9>: ”);

scanf(“%d”,&n);switch(n){

case 1:

add();

break;

case 2:

search();

break;

case 3:

change();

break;

case 4:

deleted();

break;

case 5:

sort();

break;

case 6:

show();

break;

case 7:

}

input();

break;

case 8:

output();

break;

case 9:

back();

break;

default: }

printf(“nn抱歉!您的输入有误,请在1到9之间选择!”);}while(n<=0&&n>9);int n=2;//全局变量在这里!

void add(){

system(“cls”);int i;char a;for(i=0;i

printf(“nnn请输入学生信息:nnn”);

printf(“请输入班级:”);scanf(“n%s”,stu[i].classname);printf(“请输入姓名:”);scanf(“%s”,stu[i].name);printf(“请输入学号:”);scanf(“n%d”,&stu[i].num);printf(“请输入专业:”);scanf(“n%s”,stu[i].major);printf(“请输入课程1名称:”);scanf(“n%s”,stu[i].class1);printf(“请输入课程1成绩:”);scanf(“n%d”,&stu[i].score1);printf(“请输入课程2名称:”);

scanf(“n%s”,stu[i].class2);

printf(“请输入课程2成绩:”);

scanf(“n%d”,&stu[i].score2);printf(“请输入课程3名称:”);scanf(“n%s”,stu[i].class3);printf(“请输入课程3成绩:”);scanf(“nnn%d”,&stu[i].score3);}

printf(“nn信息添加成功!!nn”);printf(“nn学生的信息如下:nn”);printf(“ntt班级

姓名

学号

专业

课程1 课程1成绩

课程2 课程2成绩

课程3 课程3成绩”);

for(i=0;i

printf(“nntt%st%st%dt%st%st%dt%st%dt%st%d”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);

} printf(“nn按任意键返回主菜单!n”);getchar();scanf(“%c”,&a);}

menu();void search(){

{ case 1: //按姓名查找 printf(“nn请输入您想要查找的姓名:

”);system(“cls”);int i=0;int choice,s,score;int flag=0;char sname[20];char a;printf(“1.按姓名查找n2.按学号查找n3.查找总成绩相等的学生nn”);printf(“请输入您想要的查找方式(序号):”);scanf(“%d”,&choice);switch(choice)

scanf(“%s”,sname);for(i=0;i

printf(“%s %d %s %d %s %d”,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);

case 2: //按学号查找 printf(“nn请输入您想要查找的学号:

”);} if(flag==0)//找不到该姓名

printf(“nn您搜索的该生信息不存在,请确认后再重新输入!n”);break;scanf(“%d”,&s);for(i=0;i

if(stu[i].num==s){ flag=1;printf(“nn该学生成绩信息如下:n”);

printf(“%s %s %d %s %d %s %d”,stu[i].name,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);

case 3: //查找总成绩相等的学生

printf(“nn请输入您想要查找的学生成绩:

”);scanf(“%d”,&score);for(i=0;i

{

flag=1;printf(“nn总成绩相等的学生成绩信息如下:n”);if((stu[i].score1+stu[i].score2+stu[i].score3)==score)}

if(flag==0)//找不到该学号

printf(“nn您搜素的该生信息不存在,请确认后再重新输入!n”);break;printf(“%s %s %d %s %s %d %s %d %s %d”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);}

}

if(flag==0)printf(“nn没有学生位于该分数,请重新输入!n”);break;default://输入不是1,2,3 printf(“nn您的输入有误!请在1到3之间进行选择!n”);}//这个才是switch的啦~(≧▽≦)/~

printf(“nn按任意键返回主菜单!”);getchar();scanf(“%c”,&a);menu();void change(){ system(“cls”);int i=0,item,n,sco1,sco2,sco3;

char name[30];char smajor[40];char sclassname[40];char a;printf(“请输入需要修改信息的学生学号:”);scanf(“%d”,&n);

for(i=0;i

if(n==stu[i].num)

{

printf(“*--------------------*n”);

printf(“1.修改课程1成绩;n”);

printf(“2.修改课程2成绩;n”);

printf(“3.修改课程3成绩;n”);printf(“4.修改学生的姓名;n”);printf(“5.修改学生的专业;n”);printf(“6.修改学生的班级;n”);

printf(“*--------------------*n”);printf(“nn请输入需要修改的信息(序号):”);scanf(“%d”,&item);

switch(item){ case 1:

printf(“nn请重新输入课程1成绩:

”);scanf(“%d”,&sco1);stu[i].score1=sco1;printf(“n”);break;case 2:

printf(“nn请重新输入课程2成绩:”);scanf(“%d”,&sco2);stu[i].score2=sco2;printf(“n”);break;case 3:

printf(“nn请重新输入课程3成绩:

”);scanf(“%d”,&sco3);stu[i].score3=sco3;printf(“n”);break;case 4:

printf(“nn请重新输入学生姓名:

”);scanf(“%s”,name);strcpy(stu[i].name,name);//将姓名代替 printf(“n”);break;case 5:

printf(“nn请重新输入学生专业:

”);scanf(“%s”,smajor);strcpy(stu[i].major,smajor);printf(“n”);break;case 6:

printf(“nn请重新输入学生班级:

”);scanf(“%s”,sclassname);strcpy(stu[i].classname,sclassname);printf(“n”);break;default: printf(“您的输入有误!请在1到6之间进行选择!”);}//这是switch的

printf(“修改后该学生信息如下:n”);

printf(“ntt班级

姓名

学号

专业

课程1 课程1成绩

课程2 课程2成绩

课程3 课程3成绩”);

printf(“nntt%st%st%dt%st%st%dt%st%dt%st%d”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);break;

printf(“nnn”);

printf(“nn按任意键返回主菜单!”);getchar();scanf(“%c”,&a);menu();

}//这是if的

if(i==n)printf(“nn无法找到该生信息,请确认后重新输入!”);//找不到学生学号

}//这是void的void deleted(){

for(i=0;i

if(strcmp(stu[i].name,name)==0)//找得到学生姓名

{ flag=1;printf(“请输入需要删除信息的学生姓名:”);scanf(“%s”,name);system(“cls”);int flag=0;int i;char b;char a;char name[30];

printf(“ntt班级

姓名

学号

专业

课程1 课程1成绩

课程2 课程2成绩

课程3 课程3成绩”);

printf(“nntt%st%st%dt%st%st%dt%st%dt%st%d”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);

if(flag==0)//找不到学生姓名

if(a=='n')printf(“nn已退出!n”);

if(a=='y'){

for(i=0;i

printf(“nn是否要删除该生所有信息?(y or n):”);getchar();

scanf(“%c”,&a);}//这是第二个if的

}//这是第一个if的

}//这是for的

}

printf(“nn该生信息不存在!请确认后重新输入!nn”);printf(“nn请按任意键返回主菜单!n”);getchar();scanf(“%c”,&b);menu();void sort(){

system(“cls”);int i,j;int choice;struct student temp;char a;printf(“nn*--------------------*nn”);printf(“1.按总成绩升序排序nn2.按学号升序排序nn”);printf(“n*--------------------*n”);printf(“nn请输入您想要的排序方式:

”);

scanf(“%d”,&choice);switch(choice){ case 1: for(i=0;i

for(j=i+1;j

if((stu[i].score1+stu[i].score2+stu[i].score3)

{

temp=stu[i];stu[i]= stu[j];stu[j]=temp;}//这是for(j)的

printf(“nn按总成绩升序排序后的信息为:n”);for(i=0;i

printf(“nntt班级t姓名t学号t专业t课程1tt课程1成绩t课程2tt课程2成绩t课程3tt课程3成绩”);

printf(“nntt%st%st%dt%st%st%dt%st%dtt%stttt%dnnn”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);}//这是for排序的

}//这是for(i)的 case 2:

for(i=0;i

break;

for(j=i+1;j

if((stu[i].score1+stu[i].score2+stu[i].score3)

{

temp=stu[i];stu[i]= stu[j];stu[j]=temp;}//这是for(j)的

printf(“nn按总成绩升序排序后的信息为:n”);for(i=0;i

printf(“nntt班级t姓名t学号t专业t课程1tt课程1成绩t课程2tt课程2成绩t课程3tt课程3成绩”);

printf(“nntt%st%st%dt%st%st%dt%st%dtt%stttt%dnnn”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);}//这是for排序的

}//这是for(i)的 }//这是switch的

printf(“nn按任意键返回主菜单!n”);getchar();scanf(“%c”,&a);menu();

default:

printf(“nn抱歉!您输入的数据有误,请在1和2之间进行选择!n”);

break;}//这是void的 void show()//这是显示显示显示显示显示 {

system(“cls”);int i;char a;printf(“nn所有学生的信息如下:n”);

printf(“ntt班级

姓名

学号

专业

课程1 课程1成绩

课程2 课程2成绩

课程3 课程3成绩”);

for(i=0;i

printf(“nntt%st%st%dt%st%st%dt%st%dt%st%d”,stu[i].classname,stu[i].name,stu[i].num,stu[i].major,stu[i].class1,stu[i].score1,stu[i].class2,stu[i].score2,stu[i].class3,stu[i].score3);

} } printf(“nn按任意键返回主菜单!n”);getchar();scanf(“%c”,&a);menu();

void input(){

system(“cls”);int i;char a;FILE*fp=fopen(“file1”,“w+”);if(fp==NULL){

} printf(“ntt班级

姓名

学号

专业

课程1 课程1成绩

课程2 课程2成绩

课printf(”文件打开失败!n“);exit(1);程3 课程3成绩”);

fscanf(fp,“nntt%st%st%dt%st%st%dt%st%dt%st%d”,stu[i].classname,stu[i].nfor(i=0;i

}

} fclose(fp);printf(“nn按任意键返回主菜单!”);getchar();scanf(“%c”,&a);menu();void output(){

system(“cls”);int i;char a;FILE*fp=fopen(“file1”,“r”);if(fp==NULL){

} printf(“文件打开失败!n”);exit(1);printf(“ntt班级

姓名

学号

专业

课程1 课程1成绩

课程2 课程2成绩

课程3 课程3成绩”);

fprintf(fp,“nntt%st%st%dt%st%st%dt%st%dt%st%d”,stu[i].classname,stu[i].nfor(i=0;i

}

void back(){ system(“cls”);} printf(“nn按任意键返回主菜单!”);getchar();scanf(“%c”,&a);menu();fclose(fp);

int t;int a;printf(“确定退出学生成绩管理系统请按1,否则按0: ”);scanf(“%d”,&t);if(t==0){ printf(“nnn请输入任意数字返回首页: scanf(”%d“,&a);system(”cls“);menu();} if(t==1){

exit(1);} }

”);

下载C语言实训心得体会word格式文档
下载C语言实训心得体会.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    语言实训任务书(范文模版)

    汇编语言实训任务书一、实训题目:汇编语言综合设计 二、实训目的:通过汇编语言综合设计,进一步加深理解汇编语言的指令系统及程序设计流程,强化编程能力,增强上机调试程序的基本......

    C语言实训心得体会(精选4篇)

    c语言实训心得体会一:c语言实训心得体会 在科技高度发展的今天,计算机在人们之中的作用越来越突出。而c语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,与计......

    C语言实训报告

    做完这个课程设计,我们的自信一下子提高了;尽管对于有些人这种程序会很简单,可对我们C语言初学者来说,已经很不容易了。这次体验为以后的学习计算机的我们增强了信心。享受劳动......

    C语言实训报告

    在这个星期里,我们在专业老师带领下进行了C语言程序实训练习。一周的C语言实训,虽然时间略显仓促,但却让我学到了很多实际运用的技能! 首先,在实训中的第一步是编写一个图书管理......

    C语言实训教程

    课程编号:学 时 数:54学时 课程名称:C语言程序设计适用专业:计算机应用技术 执 笔 人:编写日期:2008年7月 单元能力训练指导 单元一:运算符、表达式、输入输出语句 1.能力要求: 1)......

    C语言实训报告

    C语言程序设计实训报告 --学分管理系统 指导老师:陈旭东 目录 1.项目题目: ............................................................................... 2 2.项目......

    c语言实训心得

    C语言实践心得体会 在这个星期里,我们在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了......

    C语言实训报告

    目录 一.分步程序---------------1 二.三.四.心得体会 程序--------------------15 C语言结构-----------24 -------------30 主函数代码 #include #include #include stru......