c语言必背入门代码

2024-08-26

c语言必背入门代码(共4篇)

c语言必背入门代码 篇1

#include “stdio.h” #include #include #define LEN sizeof(struct course)struct course { int cID;char name[50];float credit;int semester;struct course *next;};

void main(){ int n=0;struct course *head=NULL;void insert(struct course **head,struct course *cou);void Print(struct course **head,int *n);void Modify(struct course **head,int *n);void Require(struct course **head);void Creat(struct course **head,int *n);void Delete(struct course **head,int *n);void Fun(struct course **head,int *n);

Fun(&head,&n);}

void insert(struct course **head,struct course *cou){ struct course *p0,*p1,*p2;p2=p1=*head;p0=cou;if(*head){

while((p0->semester>p1->semester)&&(p1->next))

{

p2=p1;

p1=p1->next;

}

if(p0->semester

semester)

{

if(*head==p1)*head=p0;

else p2->next=p0;

p0->next=p1;}

else

{

if(p0->semester==p1->semester){ while((p0->cID>p1->cID)&&(p1->next)&&(p0->semester==p1->semester))

{

} if(p0->semester!=p1->semester){

} else {

if(p0->cID<=p1->cID){

if(*head==p1)*head=p0;else p2->next=p0;p2=p1;p1=p1->next;p2->next=p0;p0->next=p1;

p0->next=p1;

}

else

{p1->next=p0;p0->next=NULL;}

}

}

else

{p1->next=p0;p0->next=NULL;}

} } else

{

*head=p0;

p0->next=NULL;} }

void Print(struct course **head,int *n){ struct course *p;p=*head;if(*head){

if(*n==1)printf(“nThis %d record is:n”,*n);

else printf(“nThese %d records are:n”,*n);

printf(“semester cID

name

creditn”);

do

{ printf(“%-10d%-10d%-18s%-12.1f n”,p->semester,p->cID,p->name,p->credit);

p=p->next;

}while(p!=NULL);} else printf(“nList null!n”);}

void Modify(struct course **head,int *n){ struct course *p,*p2;int cID;if(*head){

Print(head,n);while(1){ printf(“nPlease input the cID which you want to modify:”);

scanf(“%d”,&cID);p2=p=*head;while(p->next&&(cID!=p->cID)){

p2=p;

p=p->next;} if(cID==p->cID){

printf(“Please input the new cID(1~60):”);

scanf(“%d”,&p->cID);

while(p->cID<0||p->cID>60)

{

printf(“nError!”);

printf(“nPlease input the new cID(1~60):”);

scanf(“%d”,&p->cID);

}

printf(“Please input the new semester(1~8):”);

scanf(“%d”,&p->semester);while(p->semester<0||p->semester>8)

{

printf(“nError!”);

printf(“nPlease input the new semester(1~8):”);

scanf(“%d”,&p->semester);

}

printf(“Please input the new credit:”);

scanf(“%f”,&p->credit);

printf(“Please input the new name:”);

scanf(“%s”,p->name);

if(p==*head)*head=p->next;

else p2->next=p->next;

insert(head,p);

break;

}

else printf(“%d not been found!n”,cID);

} } else {printf(“nList null!n”);} }

void Require(struct course **head){ struct course *p;float sum=0;int sem,i=0;printf(“nPlease input the semester which is required:”);

scanf(“%d”,&sem);p=*head;while(p){

if(sem==p->semester)

{

i++;if(i==1)printf(“nsemester cID

name

creditn”);printf(“%-10d%-10d%-18s%-12.1f n”,p->semester,p->cID,p->name,p->credit);

sum=sum+p->credit;

}

p=p->next;} printf(“The sum of credit in this term is:%.1fn”,sum);}

void Creat(struct course **head,int *n){ struct course *p1;while(1){

p1=(struct course *)malloc(LEN);

printf(“Please input the cID(1~60):”);

scanf(“%d”,&p1->cID);

while(p1->cID<0||p1->cID>60)

{

printf(“nError!”);

printf(“nPlease input the cID(1~60):”);

scanf(“%d”,&p1->cID);

}

if(p1->cID==0)break;

printf(“Please input the semester(1~8):”);

scanf(“%d”,&p1->semester);

while(p1->semester<0||p1->semester>8)

{

printf(“nError!”);

printf(“nPlease input the semester(1~8):”);scanf(“%d”,&p1->semester);

}

} } printf(“Please input the credit:”);scanf(“%f”,&p1->credit);printf(“Please input the name:”);scanf(“%s”,p1->name);insert(head,p1);*n=*n+1;printf(“nYou can continue until the cID is ”0“!n”);Print(head,n);void Delete(struct course **head,int *n){

struct course *p1,*p2;int cID;Print(head,n);if(*head){ printf(“Please input the cID of the course which you want to delete:”);scanf(“%d”,&cID);p1=*head;

while(cID!=p1->cID&&p1->next!=NULL)

{

p2=p1;

p1=p1->next;

}

if(cID==p1->cID)

{

if(p1==*head)*head=p1->next;

else p2->next=p1->next;

printf(“Have delete cID:%dn”,cID);

*n=*n-1;

}

else printf(“%d not been found!n”,cID);} }

void Fun(struct course **head,int *n){ char num;

while(1)

{

system(“cls”);

puts(“**************** Main Menu ******************”);

puts(“* 1.Add Records

2.Print Records

*”);

puts(“* 3.Delete Records

4.Modify Records *”);

puts(“* 5.Require Records 6.Exit

*”);

printf(“Please input your choice: ”);

scanf(“%d”,&num);

switch(num)

{

case 1:Creat(head,n);break;

case 2:Print(head,n);break;

case 3:Delete(head,n);break;

case 4:Modify(head,n);break;

case 5:Require(head);break;case 6:exit(0);break;

default: break;

}

printf(“nPress ”Enter“ to continue!”);getchar();getchar();

} }

c语言必背入门代码 篇2

1 C语言概述

C语言是一种面向过程的编程语言,既有低级语言的功能,又有高级语言的优点,应用范围非常广。C语言简洁、灵活、使用方便,它具有丰富的数据类型,结构化控制语句。另外,C语言程序的可移植性好,生成代码的质量高。

目前,很多高校都开始C语言课程,目的并不一定是为了教学生用C语言开发各种应用系统,开设并学习C语言的更关键的目的是让学生了解程序设计的基本概念、理解编程的基本思想、掌握程序开发的基本方法等。与其将C语言看做是一个程序设计的开发工具,它更像是一本教科书、一门艺术,是通向其它课程及语言的一个桥梁与纽带。

一旦掌握了C语言,也就掌握了程序设计的基础与灵魂,后期在学习其它高级语言时会发现,不同的程序设计语言,其思想、方法及原理都是一脉相承的,其过度是非常简单和自然的。所以,对于学习程序设计的初学者而言,C语言便成了首选。下面结合个人理解及在教学过程中的经验总结,针对C语言程序设计初学者的学习方法进行细致的分析与探讨。

2 C语言入门方法探讨

学习是一个复杂、漫长、螺旋式前进的过程。不同的学习过程,不同的学习方式,其学习效果也是不同的,有的学习效果事半功倍,有的则是事倍功半。学习方法在学习过程中尤为重要,因此,在学习过程中应该采取科学、适合的学习方法,在有限的时间内,获得最大的成功。学习方法因人而异,在学习过程中不可千篇一律,需要根据个人的实际情况及所学知识的特点,探索自己的学习方法。对于C语言的学习,结合个人的学习感受与教学过程中的经验总结,可采用如下某些方法来学习、入门。

1)课前预习,课后复习

预习是一种良好的习惯,复习是一种必须的选择。通过预习,可以提前预知该堂课将要讲授的内容,对所学知识有个宏观的了解。在预习过程中,把难以理解的知识标注出来,上课时可以有选择、有重点的听讲。预习环节可以较大程度上培养自己的自学能力、思考能力、发现问题与解决问题的能力,避免了课堂上学习的盲目性。学而时习之,学习是一个循环的过程,无论讲述的内容是否理解,课后都应及时的去复习,书读百遍其义自现,复习有助于消化未理解的知识。温故而知新,复习不仅仅是学习旧的内容,还可以在旧知识中发现新的奥秘。无论学习什么知识,复习都是必须的功课,而且要做好。

2)反复学习,强化记忆

对于初学者而言,C语言是接触的第一种计算机编程语言,其语法、结构、思想与人的思维是有很大区别的。初学者经常会以人的角度去理解编程语言,对于程序中的知识难以理解与接受。在学习C语言的过程中,首先应该肯定的去接受,入门时不要有太多的疑问与反问,即C语言却是如此而已。其次,对所学知识要反复学习、强化记忆,习惯成自然,把新知识固化在大脑中,记忆是一种理解,记忆也有助于理解。

3)熟读程序,多敲代码

学习C语言,应该做到动眼、动耳、动脑、动手、动口。动眼即阅读已有程序代码,要想编写出自己的代码,首先要看懂别人的代码,通过阅读,在自己的脑海中构建程序的模型。动耳即认真听老师的讲解、同学的描述,分析理解的误区,丰富模型。动脑即在看、听的同时,充分调动大脑思维,积极消化、吸收新知识,扩充模型。动手即编写代码,通过敲代码,可以更深刻的体会程序的编码过程,激活记忆中的程序模型。动口即在理解的基础上,积极与他人交流、沟通,使程序模型流动起来,运用模型。编程是一个综合的过程,应发挥眼、耳、脑、手、口的协调作用,让各个器官均参与到知识的学习中。

4)勤思善练,加深理解

学而不思则罔,学习过程中,结合老师的讲述,一定要勤思考,做到举一反三。在敲代码过程中,要理解每个单词、变量、语句、函数的作用。根据程序的运行结果,分析数据在程序执行过程中的流动及处理过程。在理解当前程序的基础上,勤思考,并结合自己的理解修改程序,使其转换为自己的代码,继续编译、执行、测试。反复思考、反复修改、反复测试,直至彻底理解。

5)抓住主干,化繁为简

C语言语法丰富、知识点繁多,初学者很难理清每个内容,而且容易陷入深渊,看不清所学知识在整体中的作用。这就要求在入门阶段,不要被知识点本身所困扰,而应站在整体的角度去学习、理解,即宏观把握整体,微观理解细节,才能一览众山小,看清每个知识点在C语言中的地位。每学习一段时间,都应对所学内容进行的总结,分析该段内容在C语言中的整体地位及局部作用。初学者先要把握知识主干,在理解主干结果的基础上,再慢慢扩充分支,将复杂的问题简化。学习就是由简入繁、由繁入简一个交替过程,过程的长短与效果取决于自己的理解水平与付出程度。

6)换位思考,达到忘我

学习过程中,要时刻理解所学对象的角色,勿自以为是。对于C语言,其作用是编写C程序,目的是让计算机去执行。因此,在学习与编程过程中,应换位思考,始终从计算机的角度去理解、分析。如在学习数据的算术运算时,不应以十进制形式分析,而应以二进制补码形式去分析,这样才可理解问题的实质,有助于掌握知识的精髓。

7)调试程序,积累经验

学习C语言,也是调试程序、积累经验的过程。对于初学者,在编码过程中,经常会犯各种错误,包括语法错误及逻辑错误。当出现大量错误时,按错误顺序进行一一排除、纠正,每纠正一个错误便重新进行编译,因为后面的错误很可能是当前的错误引起的,有时一个错误改正了,后面的错误也就自动消失了。同时,在调试程序时,一定要注意经验的积累。什么原因造成什么错误,什么代码反映什么知识,应不断总结,避免以后出现同类问题。

8)相互交流,共同讨论

学习不是孤立的,在学习过程中,遇到问题要养成相互交流、讨论的习惯。个人的思维是狭隘的、个人的理解是片面的,通过交流,可以很容易发现自己的理解误区。通过讨论,取长补短,加深题解、互相学习,共同提高。在C语言学习过程中,可以组织周围的同学,形成一个学习小组,不定期的交流、讨论,这样的学习会更简单、高效。

9)培养习惯,严谨作风

作为初学者,应养成良好的编程习惯、严谨的编程作风。C语言是一种结构化程序设计思想,在编程过程中,应适当的进行缩进、换行、空格、空行、注释等,使程序结构清晰,便于阅读、理解。同时,定义变量、常量、指针及函数名时,不要随意命名,应尽量做到见名知意,可提高编程效率。

10)坚定信念,保持乐观

学习是一个长期复杂的过程,要想学有所成,必须树立正确的学习观。首先摆正心态,学习是枯燥、乏味的,要苦中作乐,乏中寻乐。其次是端正思想,梅花香自苦寒来,越是苦寒,越是芬芳。最后是保持乐观,只要付出努力,必定会收获成功的喜悦。

3 小结

C语言的学习方法因人而异。本文简单介绍了C语言程序设计的基本特点,同时结合自己的学习经验,及教学过程中的经验总结,详细讨论了学习C语言的一些基本方法。对于初学者,在学习过程中,应该活学活用,根据个人实际及知识特点,辨证的选择。通过上述对各种方法的分析,希望对初学者更好更快的踏进语言的殿堂大门能够起抛砖引玉的作用。

参考文献

[1]杨芳.更新观念推进创新提高思想政治教育实效性[J].思想教育研究,2005(10).

考拉兹猜想C语言代码-九院黄伟 篇3

考拉兹猜想,又称为3n+1猜想、角谷猜想、哈塞猜想、乌拉姆猜想或叙拉古猜想,是由日本数学家角谷静夫发现,是指对於每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。

#include

main()

{

int n;//存储该自然数

int i;

printf(“请输入一个自然数:”);

scanf(“%d”,&n);

for(i=1;;i++){

if(n==1){

printf(“第%d步:n=%dn”,i,n);break;

}else if(n%2==0){

printf(“第%d步:n=%d÷2=%dn”,i,n,n/2);

n=n/2;

}else if(n%2==1){

printf(“第%d步:n=%d×3+1=%dn”,i,n,n*3+1);

n=n*3+1;

}

}

C语言初学者入门讲座5输入输出 篇4

本小节介绍的是向标准输出设备显示器输出数据的语句,在C语言中,所有的数据输入/输出都是由库函数完成的。 因此都是函数语句。本小节先介绍printf函数和putchar函数。printf函数printf函数称为格式输出函数,其关键字最末一个字母f即为“格式”(format)之意。其功能是按用户指定的格式, 把指定的数据显示到显示器屏幕上。在前面的例题中我们已多次使用过这个函数。

一、printf函数调用的一般形式

printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用 printf 函数之前必须包含stdio.h文件。printf函数调用的一般形式为: printf(“格式控制字符串”,输出表列)其中格式控制字符串用于指定输出格式。 格式控制串可由格式字符串和非格式字符串两种组成。格式字符串是以%开头的字符串,在%后面跟有各种格式字符,以说明输出数据的类型、形式、长度、小数位数等。如“%d”表示按十进制整型输出,“%ld”表示按十进制长整型输出,“%c”表示按字符型输出等。后面将专门给予讨论。

非格式字符串在输出时原样照印,在显示中起提示作用。 输出表列中给出了各个输出项, 要求格式字符串和各输出项在数量和类型上应该一一对应。

void main()

{

int a=88,b=89;

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

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

printf(“%c,%cn”,a,b);

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

}

a<--8,b<--89

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

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

printf(“%c,%cn”,a,b);

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

本例中四次输出了a,b的值,但由于格式控制串不同,输出的结果也不相同,

第四行的输出语句格式控制串中,两格式串%d 之间加了一个空格(非格式字符),所以输出的a,b值之间有一个空格。第五行的printf语句格式控制串中加入的是非格式字符逗号, 因此输出的a,b值之间加了一个逗号。第六行的格式串要求按字符型输出 a,b值。第七行中为了提示输出结果又增加了非格式字符串。

二、格式字符串

在Turbo C中格式字符串的一般形式为: [标志][输出最小宽度][.精度][长度]类型 其中方括号[]中的项为可选项。各项的意义介绍如下:

1.类型类型字符用以表示输出数据的类型,其格式符和意义下表所示:

表示输出类型的格式字符 格式字符意义

d以十进制形式输出带符号整数(正数不输出符号)

o以八进制形式输出无符号整数(不输出前缀O)

x以十六进制形式输出无符号整数(不输出前缀OX)

u以十进制形式输出无符号整数

f以小数形式输出单、双精度实数

上一篇:转正本人述职下一篇:水泥搅拌桩施工协议书