C语言课堂教学案例_c语言教学案例

其他范文 时间:2020-02-27 11:30:52 收藏本文下载本文
【www.daodoc.com - 其他范文】

C语言课堂教学案例由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言教学案例”。

C语言课堂教学案例

2、输入三角形三边长,求三角形面积。#include “math.h” main(){

float a,b,c,s,area;

scanf(“%f ,%f,%f”,&a,&b,&c);s=1.0/2*(a+b+c);

area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“area=%fn”,area);}

例2 从键盘输入一个大写字母,要求改用小写字母输出。#include main(){

char c1,c2;

c1=getchar();

printf(“%c,%dn”,c1,c1);

c2=c1+32;

printf(“%c,%dn”,c2,c2);}

【例2】输入并运行程序,写出运行结果。main(){

int a,b,sum;

a=123;b=456;

sum=a+b;

printf(“sum is %dn”,sum);}

1、已知三个数a,b,c,找出最大值放于max中。#include “stdio.h” main(){

int a,b,c,max;

/*定义四个整型变量*/ scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);if(a>=b)

max=a;

/*a>=b*/ else

max=b;

/*amax)

max=c;

/*c是最大值*/ printf(“max=%d”,max);}

2、输入某学生的成绩,经处理后给出学生的等级,等级分类如下:

90分以上(包括90): A

80至90分(包括80):B

70至80分(包括70):C

60至70分(包括60):D

60分以下:E

#include“stdio.h” main(){

int score;

char grade;

printf(“nplease input a student score:”);

scanf(“%d”,&score);

if(score>100||score

printf(“ninput error!”);

else

{ if(score>=90)

grade='A';

else

{ if(score>=80)

grade='B';

else

{if(score>=70)grade='C';

else

{ if(score>=60)grade='D';else grade='E';

}

}

}

printf(“nthe student grade:%cn”,grade);

} }

方法二:用switch语句

#include“stdio.h” main(){ int g,s;char ch;printf(“ninput a student grade:”);scanf(“%d”,&g);s=g/10;if(s10)printf(“ninput error!”);else { switch(s){ case 10: case 9: ch='A';break;case 8: ch='B';break;case 7: ch='C';break;case 6: ch='D';break;default: ch='E';} printf(“nthe student scort:%cn”,ch);} }

【程序6】

题目:用*号输出字母C的图案。

1.程序分析:可先用’*’号在纸上写出字母C,再分行输出。2.程序源代码: #include“stdio.h” main(){

printf(“hello c-worldn”);

printf(“ ***n”);

printf(“ *n”);

printf(“*n”);

printf(“*n”);

printf(“*n”);

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

=============== 【程序7】

题目:输出特殊图案,请在c环境中运行,看一看,Very Beautiful!1.程序分析:字符共有256个。不同字符,图形不一样。

2.程序源代码:

#include “stdio.h“ main(){ char a=176,b=219;printf(“%c%c%c%c%cn“,b,a,a,a,b);printf(“%c%c%c%c%cn“,a,b,a,b,a);printf(“%c%c%c%c%cn“,a,a,b,a,a);printf(“%c%c%c%c%cn“,a,b,a,b,a);printf(“%c%c%c%c%cn“,b,a,a,a,b);}

=============== 【程序8】

题目:输出9*9口诀。

1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。2.程序源代码:#include “stdio.h” main(){ int i,j,result;printf(“n”);for(i=1;i

for(j=1;j

{

result=i*j;

printf(“%d*%d=%-3d”,i,j,result);/*-3d表示左对齐,占3位*/

} } } printf(“n”);/*每一行后换行*/

===============

【程序9】

题目:要求输出国际象棋棋盘。

1.程序分析:用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格。2.程序源代码: #include“stdio.h” main(){int i,j;for(i=0;i

if((i+j)%2==0)printf(“%c%c”,219,219);else

printf(“ n”);} } =============== 【程序10】

题目:打印楼梯,同时在楼梯上方打印两个笑脸。

1.程序分析:用i控制行,j来控制列,j根据i的变化来控制输出黑方格的个数。2.程序源代码:

#include“stdio.h” main(){ int i,j;printf(“11n”);/*输出两个笑脸*/

} for(i=1;i

printf(“%c%c”,219,219);} printf(“n”);

【程序5】

题目:输入三个整数x,y,z,请把这三个数由小到大输出。1.程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x〉y则将x与y的值进行交换,然后再用x与z进行比较,如果x〉z则将x与z的值进行交换,这样能使x最小。2.程序源代码:

main(){ int x,y,z,t;scanf(“%d%d%d”,&x,&y,&z);if(x>y){t=x;x=y;y=t;} /*交换x,y的值*/ if(x>z){t=z;z=x;x=t;}/*交换x,z的值*/ if(y>z){t=y;y=z;z=t;}/*交换z,y的值*/ printf(“small to big: %d %d %dn”,x,y,z);}

===============

【程序23】

题目:打印出如下图案(菱形)* *** ****** ******** ****** *** * 1.程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重for循环,第一层控制行,第二层控制列。2.程序源代码:main(){

int i,j,k;for(i=0;i

printf(“ ”);for(k=0;k

printf(“*”);printf(“n”);} for(i=0;i

printf(“ ”);for(k=0;k

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

【程序34】

题目:练习函数调用 1.程序分析: 2.程序源代码: #i nclude

printf(“Hello, world!n“);

} void three_hellos(void){ int counter;for(counter = 1;counter

===============

【程序37】

题目:对10个数进行排序

1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。

2.程序源代码:

#define N 10 main(){ int i,j,min,tem,a[N];/*input data*/

printf(“please input ten num:n”);for(i=0;i

scanf(“%d”,&a[i]);} printf(“n”);for(i=0;i

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

/*sort ten num*/ for(i=0;i

for(j=i+1;j

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

min=j;

tem=a[i];

a[i]=a[min];

a[min]=tem;} /*output data*/ printf(“After sorted n”);for(i=0;i

===============

【程序40】

题目:将一个数组逆序输出。

1.程序分析:用第一个与最后一个交换。2.程序源代码:

#define N 5 main(){ int a[N]={9,6,5,4,1},i,temp;printf(“n original array:n“);

for(i=0;i

for(i=0;i

a[i]=a[N-i-1];

a[N-i-1]=temp;} printf(“n sorted array:n“);for(i=0;i

}

【程序66】

题目:输入3个数a,b,c,按大小顺序输出。

1.程序分析:利用指针方法。2.程序源代码: /*pointer*/ main(){ int n1,n2,n3;int *pointer1,*pointer2,*pointer3;printf(“please input 3 number:n1,n2,n3:”);scanf(“%d,%d,%d”,&n1,&n2,&n3);pointer1=&n1;pointer2=&n2;pointer3=&n3;if(n1>n2)swap(pointer1,pointer2);if(n1>n3)swap(pointer1,pointer3);if(n2>n3)swap(pointer2,pointer3);printf(“the sorted numbers are:%d,%d,%dn”,n1,n2,n3);} swap(p1,p2)int *p1,*p2;{int p;p=*p1;*p1=*p2;*p2=p;} ===============

【程序70】

题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。

1.程序分析: 2.程序源代码:

main(){ int len;char *str[20];printf(“please input a string:n”);scanf(“%s”,str);len=length(str);printf(“the string has %d characters.”,len);} length(p)char *p;{ int n;n=0;while(*p!=''){ n++;p++;} return n;}

【程序71】

题目:编写input()和output()函数输入,输出5个学生的数据记录。1.程序分析: 2.程序源代码: #define N 5 struct student { char num[6];char name[8];int score[4];} stu[N];input(stu)struct student stu[];{ int i,j;for(i=0;i { printf(“n please input %d of %dn”,i+1,N);

printf(“num: ”);

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

printf(“name: ”);

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

for(j=0;j

{ printf(“score %d.”,j+1);

scanf(“%d”,&stu[i].score[j]);

}

printf(“n”);} } print(stu)struct student stu[];{ int i,j;printf(“nNo.Name Sco1 Sco2 Sco3n”);for(i=0;i{ printf(“%-6s%-10s”,stu[i].num,stu[i].name);for(j=0;j

printf(“%-8d”,stu[i].score[j]);printf(“n”);} } main(){ input();print();} =====================

【程序88】

题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。

1.程序分析: 2.程序源代码: main(){

} int i,a,n=1;while(n

scanf(“%d”,&a);} while(a50);for(i=1;i

printf(“*”);printf(“n”);n++;} getch();

【程序97】

题目:从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个#为止。1.程序分析:

2.程序源代码: #include “stdio.h” main(){ FILE *fp;char ch,filename[10];scanf(“%s”,filename);if((fp=fopen(filename,“w”))==NULL){printf(“cannot open filen”);exit(0);} ch=getchar();ch=getchar();while(ch!='#'){fputc(ch,fp);putchar(ch);ch=getchar();} fclose(fp);} ===============

【程序98】

题目:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以!结束。1.程序分析: 2.程序源代码:

#include “stdio.h” main(){FILE *fp;char str[100],filename[10];int i=0;if((fp=fopen(“test”,“w”))==NULL){ printf(“cannot open the filen”);exit(0);} printf(“please input a string:n”);gets(str);while(str[i]!='!'){ if(str[i]>='a'&&str[i]

printf(“%sn”,str);fclose(fp);}

在C源文件当前的目录下可以看到:test的文件

=============== 【程序99】

题目:有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。1.程序分析: 2.程序源代码:

#include “stdio.h” main(){ FILE *fp;int i,j,n,ni;char c[160],t,ch;if((fp=fopen(“A”,“r”))==NULL){printf(“file A cannot be openedn”);exit(0);} printf(“n A contents are :n”);for(i=0;(ch=fgetc(fp))!=EOF;i++){c[i]=ch;putchar(c[i]);} fclose(fp);ni=i;if((fp=fopen(“B”,“r”))==NULL){printf(“file B cannot be openedn”);exit(0);} printf(“n B contents are :n”);for(i=0;(ch=fgetc(fp))!=EOF;i++){c[i]=ch;putchar(c[i]);} fclose(fp);n=i;for(i=0;ifor(j=i+1;jif(c[i]>c[j]){t=c[i];c[i]=c[j];c[j]=t;} printf(“n C file is:n”);fp=fopen(“C”,“w”);for(i=0;i{ putc(c[i],fp);putchar(c[i]);} fclose(fp);} =============== 【程序100】

题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出

平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件“stud”中。1.程序分析: 2.程序源代码: #include “stdio.h” struct student { char num[6];char name[8];int score[3];float avr;} stu[5];main(){int i,j,sum;FILE *fp;/*input*/ for(i=0;i

=============== 21

课堂教学评价语言

一、课堂评价语言在课堂教学中的功能。1.激励的功能。我在教学过程中,对于学生所说出的正确答案、发表的独特见解、良好的行为表现都会给以表扬、鼓励,培养学生的学习愿望和学......

数学课堂教学语言

摘要:语言是教学思想的直接体现,是教师最广泛、最基本的信息载体,数学教学过程即数学知识的传递过程。数学语言是一种由数学符号、数学术语和经过改进的自然语言组成的科学语......

翠鸟 课堂教学案例

《翠鸟》课堂教学案例内蒙古赤峰市松山区第三小学 蔡常城教材分析《翠鸟》是人教版三年级下册第二单元的一篇精读课文。该组课文以“爱护周围环境”为专题,从不同角度描写了......

开放式课堂教学案例

开放式阅读课堂教学案例及感受连州二中 范海针 传统的语文阅读是以传授语文知识,应付考试为轴心,追求现成的、确定的知识,从阅读教学的内容、方法到评价,构筑一个独立的、封闭的......

语文课堂教学案例

缠绕音乐的文字心血来潮,翻翻书桌前的小学人教版的十二册语文课本,发现了一个奇妙的现象。教材中诗歌部分有近85篇,其中古典诗词占了63篇,剩下的22篇是一些现代白话文儿童诗歌。......

下载C语言课堂教学案例word格式文档
下载C语言课堂教学案例.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

热门文章
点击下载本文