欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    完整版《C语言程序设计》自学指导书.docx

    • 资源ID:15675509       资源大小:58.49KB        全文页数:43页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    完整版《C语言程序设计》自学指导书.docx

    1、完整版C语言程序设计自学指导书C语言程序设计自学指导书自学学时:64学时推荐教材:C语言程序设计 陈宝明等主编,人民邮电出版社,2009年1月第1版参考资料:1、C程序设计(第三版) 谭浩强主编,清华大学出版社出版社2、C语言程序设计教程 李明主编,上海交通大学出版社3、C语言程序设计教程 张基温主编,高等教育出版社4、C语言程序设计 何钦铭等主编,浙江科技出版社考核方式:平时作业30笔试(闭卷)70 第一章 C语言概述一、本章自学内容及要求:1、了解C语言的发展及特点。2、理解和掌握C语言源程序书写规则。3、掌握C语言源程序在Turbo C、Visual C+或者C-Free环境中的上机步骤

    2、。二、重点与难点:本章重点在于了解并掌握C语言程序的上机操作步骤,难点在于把握C语言源程序的结构和书写规则。三、学习方法指导:选择并熟悉一个C语言程序运行环境,掌握C语言程序的编辑、编译、连接和运行等步骤。四、典型例题介绍:1、C语言的程序由 一 个主函数和 若干 个子函数组成。程序的执行总是从 主 函数开始,不管它放在哪个位置。2、简述C语言程序的开发和运行步骤。答:C语言程序的开发和运行步骤包括编辑、编译、连接和运行等几个步骤,如下图所示。五、复习思考题:教材C语言概述章节习题。第二章 C语言程序设计基础一、本章自学内容及要求:1、熟悉C语言的3种基本数据类型(整型、实型、字符型)常量的表

    3、示和变量的定义与使用。2、掌握标准格式输入输出函数和字符输入输出函数的使用。3、了解各种常用运算符与表达式,掌握各类数据的混合运算规则。4、掌握赋值运算特点和复合赋值表达式等。(1)数据类型了解C语言的数据类型分类,掌握常用的3种基本数据类型整型、实型和字符型。(2)常量与变量a、常量与变量的概念b、3种基本数据类型常量的表示c、3种基本数据类型变量的定义与输入输出(3)运算符与表达式a、了解各种常用的运算符及运算特点,注意与数学中的运算区别b、掌握表达式的概念及其表达式的求值(4)数据运算注意数据在运算过程中类型的转换。二、重点与难点:重点:3种基本数据类型常量和变量的使用,各种类型数据混合

    4、运算规则和常用运算符的运算特点。难点:各种类型数据的混合运算以及根据要求进行格式输入和输出。三、学习方法指导:通过上机实验,掌握C语言基本数据类型与运算以及格式输入输出函数的使用。四、典型例题介绍:1、若有以下类型说明语句: int a; char ch1; float b;则表达式 a+ch1-b的结果的类型是( D )。A. char B. int C. float D. double2、下面正确的字符常量是( B )。 A. “x” B. y C. /” D. 3、在C语言中,要求运算对象或运算量必须是整型的运算符是( D )。 A. / B. * C. != D. % 4、设a,b都是

    5、整型变量,为了使a=4,b=8。函数scanf(“a=%d,b=%d”,&a,&b)执行时,正确的数据输入是( C )。 A. a=4 b=8 B. a=4,8 C. a=4,b=8 D. a=b=4,8 5、设a,b都是整型变量,且a=5,b=10,则函数printf(“%d,%dn”,a+,+b)的输出结果是( B )。A. 5,10 B. 5,11 C. 6,10 D. 6,116、字符串常量是用一对 双引号 括起来的字符序列。7、设x是int型变量,且x=10,则表达式x*=3+4的值是 70 ,表达式x/=x+x的值是 0 。8、下面程序的输出结果是什么?#include main(

    6、)int i, j, m=0, n=0;i = 8;j = 10;m+= i+; n-=-j;printf(“i=%d,j=%d,m=%d,n=%d”, i, j, m, n);答:程序的输出结果是:i=9,j=9,m=8,n=-9五、复习思考题:教材程序设计基础章节习题。第三章 C语言程序控制结构一、本章自学内容及要求:1、了解利用一些基本要素(常量,变量,运算符,表达式等)构成程序的基本成份。2、掌握关系运算和逻辑运算的特点。3、利用if语句和switch语句进行选择结构程序的设计。4、掌握循环结构的基本概念,利用3种循环语句进行循环结构程序设计。(1)算法及程序a、了解算法的概念b、掌握

    7、算法的流程图表示(2)三种基本结构a、了解结构化程序设计的特点b、掌握正确的逻辑表达方式c、熟练掌握if语句和switch语句的使用d、了解三种循环语句的特点,掌握用循环实现一些常用算法二、重点与难点:重点:逻辑表达式的组织;条件语句的格式和功能;循环语句的格式、功能以及特点。难点:算法的概念;建立正确逻辑思维能力,合理进行选择结构和循环结构程序设计。三、学习方法指导:复习相关的数学知识,通过习题和上机实验初步掌握C语言程序设计。四、典型例题介绍1、程序填空。编程计算1到100之间的奇数之和及偶数之和。 #include main() int even_sum,odd_sum,j,i; eve

    8、n_sum = odd_sum =0 ; for(i=0;i=100;i+=2) even_sum +=i; _j=i+1_; odd_sum +=j; printf(sum of evens is %dn, even_sum); printf(sum of odds is %dn, odd_sum -101); 2、程序填空。从键盘上输入两个正整数x,y,求它们的最大公约数。例如:如果从键盘上输入24,36,程序的输出应为:最大公约数是 : 12。 #include main() int x,y,t,i; printf(Please enter two numbers:); scanf(%d

    9、,%d,&x,&y); if(x y) t = x; x = y; y = t; t = x % y; while( t!=0 ) x = y; y = t ; t = x % y; printf(最大公约数是: %d,_y_); 3、编程,统计1500之间能被2和3整除的数的个数。#include main() int count=0,i; for(i=1;i=500;i+) if(i%2=0&i%3=0) count+;printf( 符合要求的数有%d个。n,count);4、输入三角形的三条边a、b、c,如果能构成一个三角形,则计算并输出三角形的周长和面积(结果保留两位小数);否则输出

    10、“无效的边长!”。 三角形面积计算公式为:area=,其中s=(a+b+c)/2。#include #include main() float a,b,c,s,area; printf(“Input a,b,c:”);scanf(“%f%f%f”,&a,&b,&c);if(a+bc&a+cb&b+ca)s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“area=%.2fn”,area);elseprintf(“无效的边长!”);5、编写程序,输入一个整数,求它的各位数字之和及位数。例如,34的各位数字之和是7,位数是2;-123的各位数字之和是

    11、6,位数是3。#include main()int x,m,n=0,s=0;printf( x= );scanf(%d,&x);if(x0)x=-x;dom=x%10; /* 求出该数的个位数 */s=s+m;n+;x=x/10;while(x!=0);printf( 位数是:%dn,n);printf( 各位数字之和是:%dn,s);6、使用格里高利公式求的近似值,精确到最后一项的绝对值小于10-6。 #include #include main( ) int s; float n, t, pi; t=1; pi=0; n=1.0; s=1; while(fabs(t) = 1e-6) pi

    12、 = pi+t; n = n+2; s = -s; t = s/n; pi=pi*4; printf(“pi=%10.6f n”, pi ); 7、中国古代数学史上著名的“百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三,鸡雏三,值钱一。百钱买百鸡,问翁、母、雏各几何?#include main() int cock,hen,chicken; for(cock =0; cock =20; cock +) for(hen =0; hen =33; hen +) chicken =100- cock - hen; if(5* cock +3* hen + chicken /3)=100&( chicke

    13、n %3=0) printf(%5d%5d%5dn, cock, hen, chicken); 8、编程,求S=1!+3!+5!+11!。#include main() double p,s=0; int i,j; for(i=1;i=11;i=i+2) p=1; for(j=1;j=i;j+) /* 求i! */ p=p*j; s=s+p; printf(“ s=%.2f”,s);*9、编程,打印输出以下图形:#include main() int i,j,k; for(i=1;i=4-i;j+) /* 输出第一个*号前的空格 */ printf( ); for(j=1;j=1;i-) /*

    14、 控制输出后3行*号 */ for(j=1;j=4-i;j+) printf( ); for(j=1;j=2*i-1;j+) printf(*); printf(n); 10、按如下形式打印九九乘法表的一部分。 1 * 1 = 1 2 * 1 = 2 2 * 2 = 4 3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 #include main() int i,j,k; clrscr(); for(i=1;i=4;i+) for(j=1;j=i;j+) printf(%3d *%3d =%3d,i,

    15、j,i*j); printf(n); 五、复习思考题:教材程序结构章节习题。第四章 数组一、本章自学内容及要求:1、掌握数组的概念,了解数组的特点。2、掌握一维数组的定义和引用,理解一些常用的算法,如排序、查找等。3、了解二维数组的定义和应用。4、理解字符型数组的意义和引用,熟悉常用的字符串函数。(1)数组的概念a、了解数组在程序设计中的作用b、理解数组的概念,把握其特点(2)一维数组a、了解一维数组的定义与初始化b、理解常用的排序、求最大(小)值等算法c、掌握利用循环语句访问一维数组元素的方法(3)二维数组a、了解二维数组的定义与初始化b、理解二维数组表示矩阵进行的相关计算c、掌握利用二重循

    16、环语句访问二维数组元素的方法(4)字符数组a、了解字符、字符串和字符数组的联系与区别b、掌握字符数组的定义与初始化c、掌握常用的字符串处理函数的用法(5)数组应用举例a、熟悉数组应用的特点b、理解常用的算法,如排序、查找、求最大(小)值与统计等二、重点与难点:重点:数组的定义,赋初值以及数组与循环语句相结合进行的程序设计。难点:数组的存储形式,数组名的使用,尤其是字符数组的引用。三、学习方法指导:复习第三章内容,通过习题和上机实验,掌握数组与循环结构紧密结合的程序设计特点。四、典型例题介绍:1、编程,用冒泡排序对10个整数进行降序排列。#include main( ) int a10; int

    17、 i, j , t; /*输入10个整数到数组a中*/printf (Input 10 numbers:n); for(i=0;i10;i+) scanf(%d,&ai); printf (n); /*用冒泡排序法对数组a中的10个数进行降序排序*/for(i=1; i10; i+) for(j=0; j=9-i; j+) /* a0到a9-i范围内的数进行一趟冒泡排序 */ if(ajaj+1) t=aj; aj=aj+1;aj+1=t; /*依次输出排序后的10个整数*/printf ( The sorted numbers are:n); for(i=0;i10;i+) printf(%

    18、d _ _,ai); 2、编程,用选择排序对10个整数进行升序排列。#include main( ) int a10; int i, j , p, temp; /*输入10个整数到数组a中*/printf (Input 10 numbers:n); for(i=0; i10; i+) scanf(%d, &ai);for(i=0; i9; i+)p=i; /* 从ai到a9范围内求最小元素的位置 */for(j=i+1; j10; j+)if(ajap)p=j;if(p!=i) /* 若最小元素不是ai,则将其与ai交换 */ temp=ap;ap=ai;ai=temp; printf (Th

    19、e sorted numbers are:n); for(i=0; i10; i+) printf(%d _ _”,ai);3、已知10个学生的英语成绩,从键盘输入1个成绩,查找是否有此成绩。如果找到,则输出找到的位置,否则输出“not found”。#include main( ) int a10, x;int i;/*输入10个学生成绩到数组a中*/printf (Input 10 scores:n);for(i=0; i10; i+)scanf(%d, &ai);/*输入待查找的成绩到变量x中*/printf (Input x:n);scanf(%d, &x);/*在查找表中顺序查找x*

    20、/for(i=0; i10; i+)if(ai= = x) break;/*输出查找结果*/if(i10)printf(%d is in %dn,x,i);elseprintf(not foundn);4、已知10个学生的高考总成绩,输出最高分。#include main( ) float score10, maxscore;int i;/*输入10个学生的高考总成绩到数组score中*/printf (Input 10 scores:n);for(i=0; i10; i+)scanf(%f, &scorei);/*变量maxscore赋值为第一个学生的成绩*/maxscore=score0;

    21、/*求最高分*/for(i=1; imaxscore) maxscore=scorei;/*输出最高分*/printf(maxscore=%6.1fn,maxscore);5、输入20个学生的成绩,要求统计并输出优秀(大于等于85)、及格(6084)和不及格(小于60)的学生人数。#include main( )int mark20, g, p, f,i;g=p=f=0; printf(Enter scores:n);for(i=0; i20; i+)scanf (%d, &marki); /*统计优秀、及格和不及格的学生人数*/for(i=0; i= 85) g+; else if (mar

    22、ki = 60) p+; else f+;/*输出统计结果*/printf(优秀人数:%dn, g);printf(及格人数:%dn, p);printf(不及格人数:%dn, f);6、从键盘任意输入一行字符(不超过80个),统计其中的英文字母、数字、空格以及其它字符的个数。#include main( )char string80;int letter, digit, blank, other, i;letter=digit=blank=other=0; /*输入一行字符*/printf(Enter string:n);gets(string);/*按要求统计各类字符的个数*/for(i=

    23、0; stringi!= 0; i+)if(a=stringi& stringi= z|A=stringi& stringi= Z)letter+;else if(0=stringi& stringi= 9)digit+;else if(stringi= ) /*当前字符为空格*/blank+;elseother+;/*输出统计结果*/printf(英文字母个数:%dn, letter);printf(数字个数:%dn, digit);printf(空格个数:%dn, blank);printf(其它字符个数:%dn, other);7、求一个5*5矩阵主对角线和副对角线元素总和。#inclu

    24、de main( ) int i,j;int a55,sum=0;/*输入5*5矩阵*/printf(Input 25 numbers:n );for(i=0; i5; i+) for(j=0; j5; j+) scanf(%d, &aij);/*求主对角线和副对角线元素总和*/ for(i=0; i5; i+)sum+=aii+ ai4-i;/*输出求和结果*/printf(The sum is: );printf(%dn,sum-a22);8、输入一个以回车键结束的字符串(少于80个字符),删除其中除英文字母和数字字符以外的其它字符。#include main() char str80;

    25、int i,k=0; printf(Input a string:n); gets(str); /*删除字符串中除英文字母和数字字符以外的字符*/ for(i=0; stri!=0; i+) if(stri=a&stri=A&stri=0&stri=9) strk=stri; /* 保留字符串中的英文字母和数字字符 */ k+;strk=0; printf(Output new string:n); puts(str);9、有3 4矩阵,求出其中最大元素所在的行号和列号。#include main( ) int i, j, r=0,c=0, max; int a34 = 1,2,3,4, 9,

    26、8,4,6, -10,10,-5,2 ; max=a00; for(i=0;i=2;i+) for(j=0;jmax) max=aij; r=i; c=j; printf(“max=%d,row=%d, col=%dn”,max,r,c);10、打印以下的杨辉三角形(要求打印出10行)。 11 11 2 11 3 3 11 4 6 4 11 5 10105 1 #include main() int a1010,i,j; /*第0列及主对角线上的元素值均赋为1*/ for(i=0; i10; i+) ai0=aii=1; /*计算下三角阵中除第0列及主对角线上元素以外的其他元素的值*/ for(i=2; i10; i+)


    注意事项

    本文(完整版《C语言程序设计》自学指导书.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


    收起
    展开