第一篇: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
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<0)
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(s<0||s>10)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<10;i++){
for(j=1;j<10;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<8;i++){for(j=0;j<8;j++)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<11;i++){ for(j=1;j<=i;j++)
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<=3;i++){ for(j=0;j<=2-i;j++)
printf(“ ”);for(k=0;k<=2*i;k++)
printf(“*”);printf(“n”);} for(i=0;i<=2;i++){ for(j=0;j<=i;j++)
printf(“ ”);for(k=0;k<=4-2*i;k++)
printf(“*”);printf(“n”);} }
【程序34】
題目:練習函數調用 1.程序分析: 2.程序源代碼: #i nclude } void three_hellos(void){ int counter;for(counter = 1;counter <= 3;counter++)hello_world();/*調用此函數*/ } void main(void){ three_hellos();/*調用此函數*/ } =============== 【程序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!='
主站蜘蛛池模板:
中文字幕久久熟女蜜桃|
亚洲乱码尤物193yw最新网站|
国产真人无码作爱免费视频|
精人妻无码一区二区三区|
日产无人区一线二线三线乱码蘑菇|
午夜一区欧美二区高清三区|
婷婷久久综合九色综合97|
人人妻人人澡人人爽不卡视频|
国产成人午夜福利在线播放|
中文人妻无码一区二区三区在线|
国产精品最新免费视频|
国产又爽又大又黄a片|
老司机久久99久久精品播放免费|
中文字幕久热精品视频在线|
日韩人妻无码精品久久免费一|
欧美一区二区三区久久综合|
午夜片少妇无码区在线观看|
亚洲国产成人久久精品大牛影视|
免费观看性行为视频的网站|
国产xxxx69真实实拍|
国产超碰人人爱被ios解锁|
国产极品美女到高潮|
国产亚洲中文日本不卡二区|
亚洲愉拍99热成人精品|
国产人妻人伦精品久久久|
国产 在线 | 日韩|
又硬又粗又大一区二区三区视频|
天天综合网在线观看视频|
日韩精品亚洲人成在线|
午夜亚洲福利在线老司机|
日韩理论午夜无码|
一本久道综合色婷婷五月|
国产精品无码专区av在线播放|
国产乱码精品一品二品|
亚洲精品一区二区三区在线观看|
国产精品无码成人午夜电影|
国产成人av无码精品|
躁躁躁日日躁|
婷婷亚洲综合五月天小说|
日韩精品乱码av一区二区|
久久久无码精品亚洲日韩按摩|