非计算机专业C语言基础算法.pdfVIP

  • 2
  • 0
  • 约8.05千字
  • 约 18页
  • 2019-01-22 发布于浙江
  • 举报
此文档仅为非计算机专业学生考试而写,此文档包含的算法均是 基础的算法,非计算机专业考试考到的可能性很大,有些算法可能都 是原题考查。 考查是考的最多的算法是:交换、排序、查找。而其中最关键的 是循环,他们都是一循环为基础的。其次是交换交换,好多算法里都 涉及到交换问题。 先说最简单的交换: 实现两数之间的交换的方法是:定义一个中间变量,然后借助中 间变量进行两两交换。 #includestdio.h voidmain() { //简单演示两数交换算法实现 intnum1 1,num2 2; intmid; mid num1; mun1 num2; num2 mid; } 经典例题: // abc 输入三个整数 ,由小到大输出。 #includestdio.h voidmain() { int a,b,c,mid; scanf(%d%d%d,a,b,c); if(ab) { mid a; a b; b mid; } if(ac) { mid a; a c; c mid; } if(bc) { mid b; b c; c mid; } printf(%d,%d,%d,a,b,c); } 接下来是最关键的循环: for while dowhile 循环用到最多的是 循环,其次是 循环, 最不常用 到。写循环式最关键的就是找规律,找到问题的规律,就能正确的确 定跳出循环的条件,此时循环已经完成大半了,剩下的就是循环体了, 循环体根据题意来进行输入、输出、赋值、交换等操作。 循环输入及输出: #includestdio.h voidmain() { intnumber[5][6]; int i,j; for(i 0;i5;i++) { for(j 0;j6;j++) { scanf(%d,number[i][j]); } } for(i 0;i5;i++) { for(j 0;j6;j++) { printf(%d,number[i][j]); } } } 循环问题的题就多了去了,需要平时不断地积累,在此只列举几个具 有代表性的例题: //阶乘计算 #includestdio.h voidmain() { intnum; int i; printf(输入一个数:); scanf(%d,num); intresault 1;// 0 注意一个技巧,在计算和时赋初值 ,计算积时赋初 值1 for(i 1;i num;i++) { resault* i; } printf(%d\n,resault); } 循环中有类有趣的题型是图形的输出: #includestdio.h main() { int i,j,k; for(i 1;i5;i++) { for(j 1;j 4-i;j++) printf(); for(k 1;k 2*i-1;k++) printf(*

文档评论(0)

1亿VIP精品文档

相关文档