第7章 用函数实现模块化程序设计 习题

1.写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输人。/*时间:2011年11月29日11:54:34题目:习题7.1写两个函数,分别求两个整数的最大公约数和最小公倍数要求:用主函数调用这两个函数,并输出结果。两个整数由键盘输人。备注:最小公倍数(Least Common Multiple)简写为LCM;最大公约数(greatest common divisor,简写为gcd公式:两整数的乘积 等于 其最大公约数*最小公倍数*/# include <stdio.h>int a,b;int lcm,gcd;void sort(voi...

第6章 利用数组处理批量数据 习题

6.1. 用筛选法求100之内的素数 /*时间:2011年10月31日16:22:34题目:习题6.1 用筛选法求100之内的素数备注:筛选法又称筛法,是求不超过自然数N(N>1)的所有质数的一种方法。又称埃拉托斯特尼筛子。参考:http://baike.baidu.com/view/2722688.htm */# include <stdio.h>int main(){ int a[100]; int i,j,k; for(i=0; i<100; ++i) //建立数组,将1到100的自然数写入 { a[i]=i+1; }...

第5章 循环结构程序设计 习题

5.1 请画出例5.6中给出的3个程序段的流程图 /*时间:2011年10月21日10:54:29*/# include <stdio.h>int main(){ int i,j,n=0; for(i=1;i<=4;i++) { for(j=1;j<=5;j++,n++) { if(0==n%5) { printf("\n"); } printf("%d\t",i*j); } } print...

第4章 选择结构程序设计 习题

4.1 什么是算术运算?什么是关系运算?什么是逻辑运算? 算术运算就是数的加、减、乘、除以及乘方开方等数学运算 所谓“关系运算”就是“比较运算” 将两个数值进行比较,判断其比较的结果是否符合给定的条件 逻辑运算又称布尔运算, 通常用来测试真假值。最常见到的逻辑运算就是循环的处理,用来判断是否该离开循环或继续执行循环内的指令。 4.2 C语言如何表示“真”和“假”?系统如何判断一个值的“真”和“假”? C语言用1表示真,用0表示假 C语言判断0为假,非0为真 4.3 写出下面各逻辑表达式的值。设a=3,b=4,c=5 (1)a+b>c &amp;&am...

第3章 最简单的程序设计 习题

习题3.1 /*时间:2011年10月12日11:32:14题目:习题3.1 假如我国国民生产总值的年增长率为9%,计算十年后我国国民生产总值与现在相比增长多少百分比备注:计算公式为 p=(1+r)^n r为年增长率,n为年数,p为与现在相比的倍数*/# include <stdio.h># include <math.h>int main(){ double r,p; int n; r = 9.0/100; n = 10; p = pow(1+r,n); printf("十年后我国国民生产总值与现在相比增长了%lf%\n",p*100); ...

例题3.9 试验getchar的用法

# include <stdio.h>int main (){ char a,b,c; printf("输入三个字符:\n"); a = getchar(); //从键盘输入三个字符分别赋值给变量a、b、c b = getchar(); //比如输入ABC。输入时注意三个字符连续输入后再按回车键 c = getchar(); //如果输一个字符后就按回车键,系统会把回车也当做一个字符'\n',凑够三个字符A '\n’B就输出了 //注意getchar函数不仅可以从输入...

试验第三章中各种格式符的用法

/*时间:2011年10月10日11:08:17目的:实验printf中各种格式符的用法*/# include <stdio.h>int main(){ //d格式符的用法 printf("%d\n",5); //最后输出5 d格式符用来输出一个有符号的十进制整数,正号不显示 printf("%d\n",-5); //最后输出-5//i格式符的用法 printf("%d\n",5); //最后输出5 i格式符与d格式符用法一样//f格式符的用法 do...

计算浮点数在内存中存储的2进制码(草稿)

在学《C程序设计(第4版)》。看到第50页,搞不明白实型数据的数据范围是怎么计算的,想知道实型数在内存里存储的2进制码是什么样的,看到一篇博文http://blog.csdn.net/sandyzhs/article/details/4275765讲到了一点,里面的程序对我来说有点高深看不大懂,自己试着编了一个比较笨的,功能也没完全实现。先记录下来回头慢慢学 /*时间:2011年10月9日17:04:25功能:输入一个float型数,输出其在内存中存储的2进制码备注:输入0时的输出状态不对*/# include <stdio.h>int main(){ float x; ...
默认分类 | 2011-10-09 17:17 | 阅读 1279 次 | 评论 0 条

粗糙的补码计算程序

/*时间:2011年10月8日14:41:27功能:输入一个整形数,输出它的补码目的:掌握补码的计算方法,了解不同类型的整形数的取值范围*/# include <stdio.h># include <math.h>int main(){ void selectmode (int * pmode); void calsize (int mode, int * size, unsigned long int * max, unsigned long int * min); void output (int * pArr, int len); void inpu...
默认分类 | 2011-10-08 14:56 | 阅读 1312 次 | 评论 0 条

第三章 最简单的C程序设计——顺序程序设计 例题

例题3.1 /*时间:2011年9月29日15:42:23题目:例3.1, 将华氏法测出的温度转换为摄氏法测出的温度备注:转换公式为 c = 5/9*(f-32)*/# include <stdio.h>int main(){ float f,c; printf("输入华氏温度\n"); scanf("%f",&amp;f);// c = (5.0/9)*(f-32); //注意这里的5.0 c = (f-32)*5/9; //这样写也可以 printf("华氏%f度 相当于 摄氏%f度\n...

第二章 算法——程序的灵魂 习题

习题2.1 什么是算法,试从日常生活中找三个例子,描述他们的算法 一个程序包括对数据的描述和对操作的描述两个部分,其中对操作的描述,即要求计算机进行操作的步骤,也就是算法(algorithm) 例1登陆编程论坛。打开编程论坛网页,输入用户名,输入密码,点击登陆按键 例2写日志。进入个人空间,点击发表日志,输入日志内容,点击保存发布 例3学习《C程序设计》。阅读学习教材,上机练习例题,完成课后习题。 习题2.2 什么叫结构化的算法?为什么要提倡结构化的算法? 由一些基本结构顺序组成的算法称为结构化的算法。 由于在基本结构之间不存在非顺序的跳转,流程的转移只存在于一个...

第一章 程序设计和C语言 习题

习题1.1 什么是程序?什么是程序设计? 所谓程序,就是一组计算机能识别和执行的指令。每一条指令使计算机执行特定的操作 程序设计是指从确定任务到得到结果、写出文档的全过程。包括:问题分析,设计算法,编写程序,对源程序进行编辑、编译和连接,运行程序、分析结果,编写程序文档等阶段。 习题1.2 为什么需要计算机语言?高级语言的特点 人和计算机交流信息,要解决语言问题。需要创造一种计算机和人都能识别的语言,这就是计算机语言。 高级语言很接近于人们习惯使用的自然语言和数学语言。程序中用到的语句和指令是用英文单词表示的,程序中所用的运算符和运算表达式和人们日常所使用的数学式子差不多...

第一章 程序设计和C语言 例题

例1.1 /*时间:2011年9月26日10:22:35题目:例1.1,要求在屏幕上输出以下一行信息 This is a c program.*/# include <stdio.h> //stdio 是 standard Input &amp; Output的缩写int main() //main是函数的名字,每个C语言都必须有1个main函数{ //函数体要由花括号括起来 printf("This is a c program.\n"); printf("//This is a c program...

为什么要写成if(1==i)而不是if(i==1)

看郝斌老师的视频,经常会提示if(1==i)要比if(i==1)规范。虽然照做却并不知其所以然。今天偶然看到坛友在一篇回复中谈及此问题,恍然大悟 /*时间:2011年9月20日11:02:56*/# include <stdio.h>void main(){ int i; if (i=0) //当if后面括号里的是类似赋值语句的表达式时,if判断的是赋值后,等号左边的变量是否为真 printf("i=0\n"); //这里 赋值为0,等号左边的i变量为假,所以,printf语句不会执行 if (i=1) ...
默认分类 | 2011-09-20 11:06 | 阅读 2731 次 | 评论 11 条

终于看完了郝斌老师的视频

回顾了一下日志里的学习笔记,原来自己从7月27号就开始看郝斌老师的视频,晃晃荡荡竟然学了快2个月了。好像也没有掌握到其中十之六七的程度。记得当时看到坛子里有前辈3天3夜就看完,着实令人敬仰啊!呵呵,不过自己也不是没有提高的,不能说入门吧至少是觉得摸到点门框了:) 感觉郝斌老师的教程比较适合没有基础的新手 郝斌老师的视频比较注意学习的顺序,先从简单的知识开始学起,有困难的就先放下,等累积的知识便于理解这部分难点了,再掉过头来学。这样一来是不用上来就费力的啃难点,知识学的水到渠成。再者不容易让新手太早绝望失去学习的兴趣。 郝斌老师视频的另一个特点,是教课过程中特别对新手容易犯的错...
默认分类 | 2011-09-19 16:08 | 阅读 9322 次 | 评论 6 条

读 链表示例程序

/*时间:2011年9月16日15:57:23目的:学习链表的创建和使用,读懂程序*/# include <stdio.h># include <malloc.h># include <stdlib.h>//定义了一个链表节点的数据类型struct Node{ int data; //数据域 struct Node * pNext; //指针域};//函数声明struct Node * create_list(void);void traverse_list(struct Node *);int main(void){ struc...

补码

补码的精华在于一幅图片 二进制转十进制:首位是0表示正整数,按常规方法转首位是1表示负整数,对所有位取反,加1,再按常规方法转,得到的是其绝对值

结构体与函数

# include <stdio.h># include <string.h> //使用strcpy函数,需要使用string.h头文件struct Student{ int age; char sex; char name[100]; //定义字符串类型};int main(void){ struct Student st; st.age = 18; st.sex = 'F'; strcpy(st.name,"张三"); //用字符串赋值,需要用到字符串拷贝函数strcpy,strcpy是string+...

结构体的定义、赋值以及取用其中成员的方法

/*时间:2011年9月9日15:02:27目的:以学生成绩管理为例学习结构体使用的基本知识要求:了解定义结构体的三种方法,掌握推荐使用的第一种 掌握结构体初始化和赋值的方法 熟练掌握取出结构体成员的两种方法 1. 变量名.成员名 2. 指针变量名->成员名 (这种更常用) 认真体会为什么两者等价*/# include <stdio.h>//定义结构体的第一种方法,推荐使用struct student //定义一个结构体,实际上是定义了一个叫struct student的复合数据类型{int age; ...

动态数组的构造

/*时间:2011年9月8日16:21:28目的:学习构造构造数组的方法,了解动态数组使用上与静态数组一样简单,并体会动态数组的优点备注:优点包括 1.动态数组的长度可由程序员输入,不必事先指定 2.动态数组的内存可由程序员手动分配和释放 3.动态数组的长度可由程序员手动增长或缩短 4.动态数组方便进行跨函数使用(这个以后在学)*/# include <stdio.h># include <malloc.h> int main (void){ int a[5]; //这是构造静态一维数组,如果int型占4个字节,所以系统自动分配了固...
最新评论