C语言复习提纲

 

C 程序设计总复习
第一章复习要点
C 程序的结构
 
第三章复习要点
常量和符号常量
变量
整型变量
实型变量
字符型变量
各种数据类型所占的存储空间
各类数值型数据间的混合运算
算术运算符和算术表达式
强制类型转换运算符     
自增、自减运算符
复合的赋值运算符
 
第四章复习要点
掌握赋值语句的使用
字符数据的输入输出
格式输入与输出: printf 函数  scanf 函数
 
第五章复习要点
关系运算符及其优先次序
逻辑运算符和逻辑表达式
if 语句
条件运算符
switch 语句 ( 多分支选择 )
常用算法总结
1 )分段函数的计算。
 
第六章复习要点
掌握用 while 语句实现循环
掌握用 do…while 语句实现循环
掌握用 for 语句实现循环
掌握 break 语句与 contiue 语句
循环的嵌套
常用算法总结
1 )多项式累加和、累乘积;
1. 实验五第 2
main()
{
 long sum=0,t=1;
 int i;
 for (i=1;i<=5;i++)
 { t=t*i;
     sum+=t;
 
 }
 printf("%ld",sum);
}
2 )求素数(判断素数);
判断一个数 m 是否是素数 1 )函数实现
#include <math.h>
int prime(int m)
{
 int i,k;
 k=sqrt(m);
 for (i=2;i<=k;i++)
if(m%i==0) break;
 if(i>=k+1) return 1;
 else return 0;
}
main()
{
 int m;
 scanf(“%d”,&m);
 if (prime(m)) printf(“yes”);
 else printf(“no”);
}
2 )不用函数调用
#include<stdio.h>
main()
{ int i,k,m;
 scanf(“%d”,&m);
     k=sqrt(m);
     for (i=2;i<=k;i++)
if(m%i==0) break;
 if(i>=k+1)
    printf(“yes”);
 else
    printf(“no”);
 
}                  
 
 
 
3 )数的分解,如水仙花数,完数等;
   水仙花数:一个 3 位数,其各位数字立方和等于该数本身。
#include<stdio.h>
main()
{ int i,j,k,n;                   
for(n=100;n<1000;n++)      
{   i=n/100;               
j=n/10%10;           
k=n%10;             
if(n==i*i*i+j*j*j+k*k*k)  
printf("%d/n",n);
 }   
 }
   完数:一个数如果恰好等于它的因子之和,如: 6=1+2+3 ;则 6 是完数。
  找出 1000 之内的所有完数。
  main()
   {
     int n,i,s;
     for(n=1;n<1000;n++)
       {
          s=0;
          for(i=1;i<=n/2;i++)
             if(n%i==0)
                s=s+i;
          if (s==n)
             printf(“%d/n”,n);
}
}
 
4 )求最大公约数和最小公倍数。
  main()// 用定义来求。其它略。
 {
   int a,b,c,i,gys,gbs;
   scanf(“%d%d”,&a,&b);
   c=a>b?a:b;
   for (i=c;i<=a*b;i++)
     if(i%a==0 &&i%b==0) break;
     gbs=i;
   c=a<b?a:b;
   for(i=c;i>=1;i--)
     if(a%i==0 &&b%i= =0) break;
     gys=i;
   printf(“%d,%d”,gbs,gys);
}
 
第七章复习要点
掌握一维数组的应用
掌握二维数组的定义与引用
掌握字符数组的应用
常用算法总结
1 )数组运算,如找最大,最小值问题,累加和,求平均值;
main()
{
 int a[10],i,max,min,sum=0;
float average;
for (i=0;i<10;i++)
   scanf(“%d”,&a[i]);
max=a[0];
min=a[0];
for(i=0;i<10;i++)
 {
     if(a[i]>max) max=a[i];
     if(a[i]<min) min=a[i];
     sum=sum+a[i];
}
average=sum/10.0;
printf(“max=%d,min=%d,sum=%d,average=%f”,
max,min,sum,average);
}
2 )排序运算,如冒泡法,选择排序;
选择排序:
#include<stdio.h>
main()
{   int  i,j,t,r,a[20];      
for(i=0;i<20;i++)   scanf("%d",&a[i]);    
for(i=0;i<19;i++)         
{     r=i;           
       for(j=i+1;j<20;j++)     
        {   if(a[j]<a[r])     r=j;  }
       if(r!=i)       
      {  t=a[r];
         a[r]=a[i];
          a[i]=t;   }   }
for(i=0;i<20;i++)    printf("%d ",a[i]);     }
   冒泡排序:
#include <stdio.h>
main()
{    int a[20],i,j,temp;    
for(i=0;i<20;i++) scanf("%d",&a[i]);  
       for(i=0;i<20-1;i++)      
              for(j=0;j<20-1-i;j++)     
              {   if(a[j]>a[j+1])     
                     {      temp=a[j];
                            a[j]=a[j+1];
                            a[j+1]=temp; }    }
       printf("the array after sort:/n");
       for(i=0;i<20;i++) printf("%5d",a[i]); }
                      
  3 )字符串操作: strcpy strcat strlen
ctrcpy 的功能,把 s2 赋值给 s1;
#include<stdio.h>
main()
{   char s1[100],s2[50];
int i=0,j=0;
gets(s1);
gets(s2);
while(s2[j]!='/0')
     {
s1[i]=s2[i];
            i++;
     }
s1[i]='/0';
puts(s1); 
}
 
strcat 的功能,把 s2 的内容连接到 s1 字符串
#include<stdio.h>
main()
{   char s1[100],s2[50];
int i=0,j=0;
gets(s1);
gets(s2);
while(s1[i]!='/0') i++;
while(s2[j]!='/0')
      {   s1[i]=s2[j];
            i++;
            j++;  
}
s1[i]='/0';
puts(s1); 
}
strlen :求字符串 s1 的有效字符的个数。
  #include<stdio.h>
main()
{   char s1[100];
int i=0;
gets(s1);
while(s1[i]!='/0') i++;
      printf(“%d”,i);//i 为字符串的长度。
}
 
 
 
第八章复习要点
掌握函数的定义
掌握函数的形参,实参和函数的返回值
掌握函数的调用、声明、嵌套
掌握数组作为函数参数:数组元素作函数参数、一维数组名作函数参数
掌握局部变量,全局变量和用 static 声明局部变量
常用算法总结
能以函数的形式完成第五章、第六章、第七章的常用算法。
 
第九章复习要点
宏定义
 
第十章复习要点
掌握指针的基本概念
1 )指针变量的定义
2 )指针变量的引用
3 )指针的初始化和赋值运算
4 )指针变量作为函数参数
掌握一维数组与指针的关系
掌握字符串与指针的关系
 
第十一章复习要点
掌握结构体类型变量的定义
掌握结构体变量的引用
掌握结构体变量的初始化
掌握结构体数组
掌握指向结构体类型数据的指针
 
第十三章复习要点
掌握文件的打开
掌握文件的关闭
掌握文件的读写:字符输入输出函数、格式化读写函数 (fprintf() fscanf())
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值