C
xiaofeilong321
这个作者很懒,什么都没留下…
展开
-
《C菜鸟的蜕化之路系列》-- 推荐经典书籍
来源:http://bbs.csdn.net/topics/390100091★ 作者声明 ★ :本人技术不高不低,不会汇编,本科将要毕业,不是权威,可信度由看官您决定。★ 面向的读者 ★ :相信C语言能创造万物的虔诚教徒,以及对教派之外的不明真相群众,皆可从中有所收获。★ 本系列文章的结构 ★ :① 分门别类的推荐C语言相关的经典书籍,所有推荐书籍保证本人全部转载 2013-04-09 13:49:28 · 738 阅读 · 0 评论 -
【程序37】对10个数进行排序
【题目】用选择排序法对10个数进行排序。#include#define N 10int main(){ int i,j,a[N],temp; printf("Please enter 10 numbers!\n"); for(i=0;i<N;i++) scanf("%d",&a[i]); for(i=0;i<N-1;i++) { int min原创 2013-04-10 20:40:00 · 744 阅读 · 0 评论 -
【程序38】求一个3*3矩阵对角线元素之和
【题目】求一个3*3矩阵对角线元素之和#include#define N 3int main(){ int i,j,a[N][N],sum=0; printf("Please input rectangle element(3*3)!\n"); for(i=0;i<N;i++) for(j=0;j<N;j++) scanf("%d",&a[i][j]原创 2013-04-10 20:50:01 · 998 阅读 · 0 评论 -
【程序30】一个5位数,判断它是不是回文数
【题目】:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。#includeint main(){ int a,b,d,e;//万、千、百、十、个位 long x; printf("Enter an number(10000--99999) \n"); scanf("%ld",&x); a=x/10000; b=x%10000原创 2013-04-10 18:19:30 · 1206 阅读 · 0 评论 -
【程序34】练习函数调用
#includeint main(){ void hello(); void threehello(); threehello(); return 0;}void hello(){ printf("Hello World!\n");}void threehello(){ for(int i=0;i<3;i++) hello(原创 2013-04-10 19:43:29 · 641 阅读 · 0 评论 -
【程序29】 不多于5位数,求是几位数
【题目】:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。1. 程序分析:学会分解出每一位数,如下解释:(这里是一种简单的算法,师专数002班赵鑫提供) 2.程序源代码:#includeint main(){ int a,b,c,d,e;//万、千、百、十、个位 long x; printf("Enter an number <=99999原创 2013-04-10 18:14:02 · 1036 阅读 · 0 评论 -
【程序31】输入星期几的第一个字母来判断一下是星期几(无错版本)
【题目】:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。2.程序源代码:#includeint main(){ char i,j; printf("Please enter the first letter:\n"); scanf("原创 2013-04-10 19:05:24 · 1451 阅读 · 1 评论 -
【程序32】Press any key to change color(TC实现版本)
【题目】:Press any key to change color, do you want to try it. Please hurry up! 1.程序分析: 2.程序源代码: #include void main(void) { int color; for (color = 0; color < 8; color++) {转载 2013-04-10 19:28:48 · 1305 阅读 · 0 评论 -
输入一行字符,统计其中有多少个单词
题目:输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。【代码】#includeint main(){ char string[256]; int i,num=0,word=0; char c; printf("Please input a line of words!\n"); gets(string); for(i=0;(c=string[i])原创 2013-03-28 10:24:04 · 1307 阅读 · 0 评论 -
【程序39】数组,插入数据
【题目】:有一个已经排好序的数组.现输入一个数,要求按原来的规律将它插入数组中。1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置. 2.程序源代码: #includeint main() { int a[11]={1,4,6,9,13,16,19,28,40,100}; int temp1,te原创 2013-04-11 12:10:53 · 744 阅读 · 0 评论 -
【程序33】学习gotoxy()与clrscr()函数(TC实现版本)
#include "conio.h"#include "stdio.h"void main(void){ clrscr();/*清屏函数*/ textbackground(2); gotoxy(1, 5);/*定位函数*/ cprintf("Output at row 5 column 1\n"); textbackground(3); gotoxy转载 2013-04-10 19:31:30 · 1904 阅读 · 0 评论 -
【程序35】文本颜色设置
题目:文本颜色设置#include "stdio.h"#include "conio.h"void main(void){ int color; for (color = 1; color { textcolor(color);/*设置文本颜色*/ cprintf("This is color %d\r\n", color); }转载 2013-04-10 19:44:31 · 699 阅读 · 0 评论 -
【程序21】猴子吃桃问题(C语言)
【题目】猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?#includeint main(){ int day=9,x1,x2=1; while(day>0) { x1=2*(x2+1);原创 2013-04-09 19:52:40 · 1095 阅读 · 0 评论 -
【程序22】两个乒乓球队进行比赛
【题目】两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。#includeint main(){ char i,j,k;// for(i='x';i<='z';i++) for(j='x';j<='z';j++) if(i!=j)原创 2013-04-09 20:04:20 · 707 阅读 · 0 评论 -
【程序23】打印菱形
【题目】:打印出如下图案(菱形) * ******************** *** *#includeint 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++) print原创 2013-04-09 20:19:03 · 604 阅读 · 0 评论 -
【程序24】 求数列的前20项和
【题目】:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。1.程序分析:请抓住分子与分母的变化规律。 2.程序源代码:#includeint main(){ float a=2,b=1,s=0,t; int n=20; while(n>0) { s=s+a/b; t=a; a=a+b;原创 2013-04-09 20:33:37 · 1453 阅读 · 1 评论 -
【程序25】求1+2!+3!+...+20!的和
【题目】求1+2!+3!+...+20!的和#includeint main(){ double t=1,sum=0; int i; for(i=1;i<=20;i++) { t*=i; sum+=t; } printf("1+2!+3!+...+20!=%lf\n",sum); return 0;}原创 2013-04-09 20:40:02 · 1157 阅读 · 0 评论 -
枚举类型(谭浩强 c程序设计(第四版)例9.12)(错误已改正)
【题目】口袋中有红、黄、蓝、白、黑5种颜色的球若干个。每次从口袋中先后取出3个球,问得到的3种不同颜色的球的可能取法,输出每种排列的情况。#includeint main(){ enum color{red,yellow,blue,white,black}; int i,j,k,p;/*(教材:enum color i,j,k,p;) 枚举是常量哦,不能进行++操作,如果按教材写,则后原创 2013-04-07 16:19:16 · 1658 阅读 · 0 评论 -
【程序28】五个人问岁数
【题目】有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁.问第4个人岁数,他说比第3个人大2岁.问第三个人,又说比第2人大两岁.问第2个人,说比第一个人大两岁.最后问第一个人,他说是10岁.请问第五个人多大? 1.程序分析:利用递归的方法,递归分为回推和递推两个阶段.要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推. 2.程序源代码: #i原创 2013-04-10 13:41:13 · 848 阅读 · 0 评论 -
【程序27】利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来
【题目】利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。#includeint main(){ void plain(int n); int i=5; plain(i); printf("\n"); return 0;}void plain(int n){ char next; if(n<=1) { next=getchar(); put原创 2013-04-10 13:31:00 · 13157 阅读 · 1 评论 -
【程序40】将一个数组逆序输出
【题目】将一个数组逆序输出。#include#define N 10int main() { int a[N]={0,1,2,3,4,5,6,7,8,9}; int i,t; printf("The original array is:\n"); for(i=0;i<N;i++) printf("%d ",a[i]); for(i=0;i<N/2;i++)原创 2013-04-11 12:22:56 · 1233 阅读 · 0 评论 -
【程序41】学习static定义静态变量的用法
【题目】:学习static定义静态变量的用法#includeint main(){ void fun(); for(int i=0;i<3;i++) fun(); return 0;}void fun(){ int i=0; static int static_i=0; printf("i=%d\n",i); printf("stat原创 2013-04-11 16:00:11 · 1076 阅读 · 0 评论 -
【程序57】画图,学用line画直线
【题目】:画图,学用line画直线(在TC中实现)#include "graphics.h" main() {int driver,mode,i; float x0,y0,y1,x1; float j=12,k; driver=VGA;mode=VGAHI; initgraph(&driver,&mode,""); setbkcolor(GREEN); x0=转载 2013-04-11 21:04:09 · 1403 阅读 · 0 评论 -
【程序46】宏#define命令练习(1)
题目:宏#define命令练习(1)#include#define TRUE 1#define FALSE 0#define SQ(x) (x)*(x)int main(){ int num; int again=1; printf("Program will stop if input value less than 50.\n"); while(agai转载 2013-04-11 19:09:13 · 981 阅读 · 0 评论 -
【程序48】宏#define命令练习(3)
【题目】宏#define命令练习(3)#define LAG >#define SMA <#define EQ ==#include int main(){ int i,j; printf("Please input two numbers\n"); scanf("%d %d",&i,&j); if(i LAG j) printf("%d larger原创 2013-04-11 19:29:48 · 865 阅读 · 0 评论 -
【程序49】#if #ifdef和#ifndef的综合应用
【题目】:#if #ifdef和#ifndef的综合应用#include#define MAX#define MAXIMUM(x,y)(x>y)?x:y#define MINIMUM(x,y) (x>y)?y:xint main(){ int a=10,b=20; #ifdef MAX printf("The larger one is %d\n",MA转载 2013-04-11 19:36:17 · 776 阅读 · 0 评论 -
【程序52】学习使用按位或 |
【题目】:学习使用按位或 |1.程序分析:0|0=0; 0|1=1; 1|0=1; 1|1=1 2.程序源代码: #include int main() { int a,b; a=077; b=a|3; printf("The a & b(decimal) is %d \n",b); b|=7; printf("T转载 2013-04-11 19:48:26 · 962 阅读 · 0 评论 -
C 语言 位段
C 语言位段 定义格式为:type [var]:digits其中type只能为int,unsigned int,signed int三种类型(int型能不能表示负数视编译器而定,比如VC中int就默认是signed int,能够表示负数)。位段名称var是可选参数,即可以省略。digits表示该位段所占的二进制位数。那么定义一个位段结构可以像下面这段代码去定义:转载 2013-04-18 19:56:14 · 699 阅读 · 0 评论 -
C语言位运算详解
来源:http://www.cnblogs.com/911/archive/2008/05/20/1203477.html位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。C语言提供的位运算符列表:运算符 含义 描述& 按位转载 2013-04-18 20:01:32 · 510 阅读 · 0 评论 -
getchar()和EOF总结(转)
大师级经典的著作,要字斟句酌的去读,去理解。以前在看K&R的The C Programming Language(SecondEdition) 第1.5节的字符输入/输出,被getchar()和EOF所迷惑了。可能主要还是由于没有搞清楚getchar()的工作原理和EOF的用法。因此,感觉很有必要总结一下,不然,很多琐碎的知识点长时间过后就会淡忘的,只有写下来才是最好的方法。转载 2013-05-26 10:27:16 · 778 阅读 · 0 评论 -
电话订餐信息处理(c语言--数组版)
#include#include#define MAXSIZE 20void Insert(int*);void Delete(int*);void Search(int);void Update(int);void Show(int);struct guest{ char name[10];//姓名 int num;//编号 char ti原创 2013-07-01 19:45:35 · 4328 阅读 · 7 评论 -
【程序55】学习使用按位取反~
【题目】:学习使用按位取反~1.程序分析:~0=1; ~1=0; 2.程序源代码:#include int main() { int a,b; a=234; b=~a; printf("The a's 1 complement(decimal) is %d \n",b); a=~a; printf("The a'转载 2013-04-11 20:01:06 · 907 阅读 · 0 评论 -
【程序53】学习使用按位异或 ^
【题目】:学习使用按位异或 ^1.程序分析:0^0=0; 0^1=1; 1^0=1; 1^1=0 2.程序源代码:#include int main() { int a,b; a=077; b=a^3; printf("The a & b(decimal) is %d \n",b); b^=7; printf(转载 2013-04-11 19:50:43 · 638 阅读 · 0 评论 -
【程序43】学习使用static的另一用法
【题目】:学习使用static的另一用法#include int main(){ int i,num; num=2; for(i=0;i<3;i++) { printf("The num equal %d \n",num); num++; { static int num=1; printf("The internal block nu原创 2013-04-11 16:13:38 · 1071 阅读 · 1 评论 -
【程序42】 学习使用auto定义变量的用法
【题目】 学习使用auto定义变量的用法#include int main(){ int i,num; num=2; for(i=0;i<3;i++) { printf("The num equal %d \n",num); num++; { auto int num=1; printf("The internal block num原创 2013-04-11 16:07:56 · 1333 阅读 · 0 评论 -
【程序44】学习使用external的用法
题目:学习使用external的用法 #include int a,b,c;void add() { int a; a=3; c=a+b; } int main() { a=b=4; add(); printf("The value of c is equal to %d\n",c);转载 2013-04-11 16:22:39 · 1127 阅读 · 0 评论 -
【程序45】学习使用register定义变量的方法
【题目】:学习使用register定义变量的方法#include int main(){ register int i; int tmp=0; for(i=1;i<=100;i++) tmp+=i; printf("The sum is %d\n",tmp); return 0;}转载 2013-04-11 16:27:16 · 914 阅读 · 0 评论 -
【程序51】学习使用按位与 &
【题目】学习使用按位与 &1.程序分析:0&0=0; 0&1=0; 1&0=0; 1&1=1 2.程序源代码:#include int main() { int a,b; a=077; b=a&3; printf("The a & b(decimal) is %d \n",b); b&=7; printf("Th转载 2013-04-11 19:45:42 · 1135 阅读 · 0 评论 -
【程序54】取一个整数a从右端开始的4~7位
【题目】:取一个整数a从右端开始的4~7位程序分析:可以这样考虑: (1)先使a右移4位。(2)设置一个低4位全为1,其余全为0的数。可用~(~0(3)将上面二者进行&运算。2.程序源代码: #include int main() { unsigned a,b,c,d; scanf("%o",&a); b=a>>4;转载 2013-04-11 19:58:19 · 2584 阅读 · 0 评论 -
【程序56】画图,学用circle画圆形
【题目】画图,学用circle画圆形1.程序分析: 2.程序源代码:#include //VC6.0中是不能运行的,要在Turbo2.0/3.0中int main() { int driver,mode,i; float j=1,k=1; driver=VGA; mode=VGAHI; initgraph(&driver,&mode转载 2013-04-11 21:02:34 · 2664 阅读 · 0 评论