C语言实用程序设计100例流程图_第1页
C语言实用程序设计100例流程图_第2页
C语言实用程序设计100例流程图_第3页
C语言实用程序设计100例流程图_第4页
C语言实用程序设计100例流程图_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选文档C语言实用程序100例第一篇基础与提高实例1利用库函数编写基本显示程序实例2变量属性实例3运算符与类型实例4关于程序结构实例5显示函数曲线图实例6二分法选代的应用实例7多变的立方体实例8一维整型数组应用(1)实例9一维整型数组应用(2)实例10一维整型数组应用(3)实例11一维整型数组应用(4)实例12二维数组应用(1)显示杨辉三角实例13二维数组应用(2)魔方阵实例14字符数组应用(1)逻辑判断实例15字符数组应用(2)数据模拟实例16二维数组应用字符比较实例17利用指针进行数据处理实例18指针与字符串实例19利用指针处理二维数组实例20一级指针实例21利用指针传递参数值实例22结构

2、体的应用实例23链表的应用(1)实例24链表的应用(2)实例25链表的应用(3)实例26共用体的应用实例27枚举类型应用实例28位运算买例29义件加密实例30文件的按记录随机读写第二篇图形与多媒体实例31改变文字背景色实例32及本颜色设置实例33制作表格实例34制作多样的椭圆实例35美丽的透视图形实例36错位窗口实例37能移动的矩形实例38多变的填充矩形实例39黄黑相间的矩形与圆实例40六叶图案实例41特殊图案实例42国际象棋棋盘实例43制作楼梯实例44使用线类型函数设置多个汉字实例45彩色群点实例46饼图买例47产品折线图实例48直方图实例49变大变色的拒形与国实例50多变的填充多边形实例5

3、1流星球实例52小球动态碰撞买倒53多,曲线实例54多变的圆与环实例55优美的球体实例56运动的小车实例57统计动画消失次数实例58运行的时钟实例59直升飞机实例60演绎“生命游戏”实例61猜猜看买例62艺术清屏买倒63制作火焰实例64动态绘制256条不同颜色的直线实例65红绿蓝三原色渐变第三篇综合小程序实例66两个矩阵相乘实例67艺术钟实例68家庭财务管理小程序实例69用系统时间实现随机数实例70闪动的多彩圆实例71检查系统有无鼠标实例72圆形光盘与矩形实例73动态渐变图案实例74往返两地间的小车实例75飘扬的红旗实例76显示蓝天白云图形实例77百叶窗第四篇计算机等级考试上机试题(二级)第五

4、篇计算机等级考试上机试题(三级)部分流程图实例11=>flag当flag=1时输出选择信息ch=getchar()得到大写字符:ch=toupper(ch)ch='F'否是调用函数print返回:return实例2定义宏代换:10=>N-1=>k0=>n 当!(n>0&&(k>0&&k<=65536)时输出显示信息scanf("%ld%ld",&k,&n)若数据错误,输出错误信息调用随机数子函数生成随机数输出随机数实例3原始进制赋值:1=>k,0=>xb,0

5、=>x1,0=>x2得到初始值:xa,a,b 当x1!=0时x2+(x1%10)*k=>x2x1/10=>x1a/10=>a1=>k,x2=>x1 当x1!=0时xb+(x1%b)*k=>xbx1/b=>x1k*10=>kY=>yes 当toupper(yes)='Y'时0=>count产生随机数:number 当guess!=number时输入guess值给出判断信息15次退出输入yes值当1<guess<100时实例4实例50=>i 当i<H时a=30*sin(i*N)0=>

6、;j 当j<a+40时j=40是 否Printf(“%c”,|);Printf(“%c”,BLANK);j+Printf(“%c”,DOC);a<0是 否a+40=>j 当j<40时printf("%c",BLANK); j+printf("%c",'|');printf("n");实例6 当fmin*fmax>0时输入初始范围:xmin,xmax得到最大值与最小值:fmax,fmin 当fabs(fmax-fmin)>=1e-5时fun(xmid)=>fmid(xmin+xm

7、ax)/2=>xmidfmid*fmin<0是 否xmid=>xminfmid=>fminxmid=>xmaxfmid=>fmax输出结果实例7主函数main()Y =>ch 当ch=Y得到继续键值给chch的大写值=>ch调用递归函数hanoi解题得到盘子数 递归函数hanoin>0是 否递归调用hanoi(n-1,a,c,b)显示移盘信息move递归调用hanoi(n-1,c,b,a)实例8i=12=>a0 当i<(N-1)i+ai=2*i+1i=1 当i<(N-1) ai!=0是 否 当j<N时j=i+1aj%

8、ai=0是 否aj=0j+当i<N时i=0,j=0ai!=0是 否 ai!=0是 否printf("%5d",ai)printf("n")i+实例92=>a0i=1 当i<(N-1)ai=2*i+1i+ 当i<(N-1)i=1 ai!=0是 否j=i+1 当j<N时aj%ai=0是 否aj=0j+当i<N时i=0,j=0ai!=0是 否printf("%5d",ai) ai!=0是 否printf("n")i+实例100=>i 当i<n-1时i=>k i+1=&

9、gt;j 当j<m时 aj<ak是 否 j=>k aj<ak是 否交换ai与akj+i+实例110=>find 0=>first (n-1)=>last交互得到查找值k 当(first<=last)并且(find=0)时(first+last)/2=>halfk>ahalf是 否k=ahalf是 否输出找到信息1=>findhalf-1=>lasthalf+1=>first实例12 当i<=n时2=>i1=>j 当j<i时ai-1j-1+ai-1j=>aijj+i+0=>i 当i&

10、lt;=n时 当j<(70-6*i)/2时printf(" ");j+0=>j 当j<=i时printf("%6d",aij);j+0=>j实例13 当i<N时0=>j 当j<N时0=>aijj+N/2=>j1=>a0j 当k<=N*N时2=>kj-,i+i<0是 否(i+2)%N=>iN-1=>i 当i<N时j>N-1是 否0=>j>j>aij=0是 否k=>aij0=>iprintf("t");0=&

11、gt;j 当j<N时printf("%4d",aij);j+printf("nn");i+; 实例14A=>xwei0, 1=>i 当i<5时B=>xweii, 1=>j 当j<5时j!=i是 否C=>xweij, 1=>k 当k<5时k!=i&&k!=j是 否D=>xweik,E=>xwei10-i-j-k判断输出k+j+实例150=>i 当i<4时0=>j 当j<13时ai=>s2*j+26*i,bj=>s2*j+26*i+1j

12、+0=>ii+生成随机数 当i<52时j=random(52-i);与最后一张牌交换花色i+与最后一张牌交换牌值0=>i 当i<104时(j%13)!=0是 否printf("nnn");printf(" %c%c",si,si+1);i+=2,j+图15-2 流程图实例16得到原始字符串,标志信息数组置初值-, 0=>i 当i<N时str0i='0'是 否i=>j 当(j<N)&&(str1j!='0'时flagj0='y'flagj4=st

13、r1j;j+str1i='0'是 否 当(j<N)&& (str0j!='0')'时i=>jflagj0='y'flagj2=str1j;j+str0i!=str1i)是 否flagi0='y' lagi2=str0i;flagi4=str1i;实例17 当*p!='0'&&(*p>='0')&&(*p<='9')时k=*(p+)-48;number=10*number+k;return number;实

14、例18得到字符串:gets(p) 当*p!='0'时 (*p>='A')&&(*p<='Z')是 否up+ (*p>='a')&&(*p<='z')是 否low+; *p=' '是 否space+;digit+;other+;i+图18-2 流程图实例190=>i 当i<M时0=>flag0=>j当j<N时*(*(p+i)+j)<60=1是 否1=>flagj+flag=1是 否顺序显示成绩i+实例20

15、0=>i 当i<N时i+1=>j 当j<N时 strcmp(*(p+i),*(p+j)>0是 否pstr=*(p+j); *(p+j)=*(p+i);*(p+i)=pstr;j+i+实例21(b-a)/N=>h(*fun)(a)+(*fun)(b)/2.0=>s 当i<=N时s+(*fun)(a+i*h)=>s1=>ii+return (s*h)实例22gets();gets(numstr);printf("nInputdata(name,number,sex(m/w),score)of stude

16、ne%d:n",n+1);studentn.sex=getchar();studentn.number=atol(numstr);getchar();studentn.score=atof(numstr);gets(numstr);n+;实例231=>flaghead=>*p 当p!=NULL&&flag=1时p->key=k是 否0=>flagp->next=>p flag=0是 否否否p->count+;head=>phead=(struct number *)malloc(LENGTH);head->key=

17、k; head->count=1; head->next=p;实例24函数newhead=>p1,head=>p2开辟空间:p=(struct student *)malloc(LENGTH);gets(numstr);p->number=atol(numstr); gets(p->name); p->number>0是 否 head=NULL是 否p=>headNULL=>p->nextn+; 当(p->number>p1->number)&& (p1- >next!=NULL)时p1=

18、>p2, p1->next=>p1p->number<p1->number是 否显示错误信息函数listp->number<p1->number是 否head=p1是 否head=p;p>next=p1;n+;p2>next=p; p>next=p1; n+;p->number=p1->number是 否strcpy(p1>name,p->name);p1>next=NULL是 否p1->next=p;p>next=NULL;n+;实例25atol(gets(numstr)=>

19、;k head=NULL是 否显示空表信息head->number=k是 否p1=head;head=head->nextn-;free(p1);head=>p1 当p1->number!=k&&p1->next!=NULL时p2=p1; p1=p1->next;p1->number=k是 否p2->next=p1->next; free(p1); n-;显示错误信息图25-2 流程图实例260=>i 当i<N时gets();scanf("%d",&infoi.ag

20、e); getchar();infoi.sex=getchar();getchar();infoi.job=getchar();getchar();根据职业不同选择单位类型输入数据实例27i=RED 当i<=BLACK时j=RED 当j<=BLACK时i!=j是 否另外三种赋值另外三种赋值k=RED 当k<=BLACK时 k!=i&&k!=j是 否printf("%-4d",+n);新排列组合则输出结果实例28b=number>>n循环右移a=number<<(16-n);number=a|b;return (num

21、ber);进制转换显示k=0x8000;printf(" %04x(16) t",number); 当i<16时bit=(k&number)?1:0;printf("%d",bit);i=7是 否printf("-");k>>=1;printf("(2)n");实例291=>flag(fp1=fopen("file1.txt","r")=NULL是 否输出信息:文件打不开flag=0;fclose(fp1); flag=1是 否(fp2=fop

22、en("file2.txt","w")=NULL是 否输出信息:文件打不开flag=0;fclose(fp2);fclose(fp1); 当flag=1时 当(ch=fgetc(fp1)!=EOF时ch=new(ch); fputc(ch,fp2);flag=0;fclose(fp1);fclose(fp2);printf("n source file: file1.txt n new file: file2.txt");实例30写新记录k=n*sizeof(struct student);打开文件文件指针移动到指定地点gets(nu

23、mstr); stud.number=atol(numstr);gets();gets(numstr); stud.score=atof(numstr);fwrite(&stud,sizeof(struct student),1,fp);n+;实例78 定义变量x ,y, z for (x=0 ; x<=100 ; x+) for ( y=0 ; y<=100 ; y+) z=100-x-y 15x+9y+z=300 T F 打印x ,y ,z 实例79 n=0 x 从apple变到 pear y 从apple变到 pear xy T F z从apple变

24、到 pear z x和zy T F For (loop =1 ;loop<=3 ;loop+) loop 1 2 3 pri=x pri=y pri=z pri apple arange banana pineapple pear 打印 打印 打印 打印 打印 apple arrange banana pineapple pear n=n+1 输出制法的总数 实例 x=1, y=18y >0x=2*(x+1)y-打印x真假80实例81输入a,bm=a ,n=ba<ba ,b 交换c=a%b c!=0a=b, b=c , c=a%b输出最大公约数和最小公倍数真假真假实例82定义数组a318, s18输入三个字符串a0>a1交换a0 和a1a0>a2a1>a2交换a0 和a2交换a1 和a2输出三个字符串a0 , a1 , a2真假真假假真实例83定义符号常量N为10输入N名学生的学号和成绩并给数组num和st表达式1 x=1x<=Nsum=sum+stx x+ave=sum/N 打印ave表达式1 x=1x<=NStx>=ave打印numx , stxx+真假真真假定义

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论