汇编网首页登录博客注册
wukong的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
文章收藏

[2012-02-01 19:28] C语言学习文件操作(二)

1.文件结束标志EOF(-1),可能比字符多几位,所以要使用int接收。
2.rt” 只读打开一个文本文件,只允许读数据 

“wt” 只写打开或建立一个文本文件,只允许写数据 

“at” 追加打开一个文本文件,并在文件末尾写数据 

“rb” 只读打开一个二进制文件,只允许读数据 

“wb” 只写打开或建立一个二进制文件,只允许写数据 

“ab” 追加打开一个二进制文件,并在文件末尾写数据 

“rt+” 读写打开一个文本文件,允许读和写 

“wt+” 读写打开或建立一个文本文件,允许读写 

“at+” 读写打开一个文本文件,允许读,或在文件末追加...
阅读全文 | 评论次数(0) | 浏览次数(277) | 所属类型(C语言学习)

[2012-02-01 18:37] C语言学习文件操作(一)

一二进制和文本文件的异同点(网上搜了点资料)
  从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。

  ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。例如,数5678的存储形式为:
ASC码:  00110101 00110110 00110111 00111000
     ↓     ↓    ↓    ↓
十进制码: 5     6    7    8 共占用4个字节。ASCII码文件可在屏幕上按字符显示, 例如源程序文件就是ASCII文件,用DOS命令TYPE可显示文件的内容。 由于是按字符显示,...
阅读全文 | 评论次数(0) | 浏览次数(466) | 所属类型(C语言学习)

[2012-01-31 23:54] C语言字符串小结

每当学习字符串,都抓不到本质,这次学习,有些心得,供大家参考,不对的地方请多多指点。
1.字符串的结尾标志符\0.(NUL).这有利于遍历,方便字符串处理。
2.字符串的存储。char *p = "i like c";此时字符串是常量字符串,不可修改,有\0,所以可循环查询操作。char p[] = "i like c",此时是字符数组,并自动加上了\0.但不算字符数量,char p[8]="i like c";如果给出了字符数量,如果填充后有剩余,那么自动加上\0,否则不加上。
3.字符串输入函数
gets()---get string 从系统的标准输入设备(通常是键盘)获得一个字符...
阅读全文 | 评论次数(2) | 浏览次数(576) | 所属类型(C语言学习)

[2012-01-31 21:55] C语言字符小结

1.字符串分类:可打印字符:a-z,A-Z,0-9,-,~,!,@,#,%,^,&,*,(,),_,+,|,=,{,},[,],,,/,\,:,;,",',<,>,.?,`,空格,$,及32到126的ascii码对应的字符;控制字符:0到31,和127(删除键)。两者比例:95:33
2.控制字符:
控制字符二进制 十进制 十六进制 缩写 可以显示的表示法 名称/意义 
0000 0000 0 00 NUL ␀ 空字符(Null) 
0000 0001 1 01 SOH ␁ 标题开始 
0000 0010 2 02 STX ␂ 本文开始 
0000 0011 3 03 ETX ␃ ...
阅读全文 | 评论次数(0) | 浏览次数(290) | 所属类型(C语言学习)

[2012-01-31 17:59] C语言字符串处理

1.计算字符串的长度
/*
    str 不为NULL
*/
int strlen(const char *str)
{
        int i = 0;
        while(*str++!='\0')
                i++;
        return i;
}
2.拷贝字符串到指定缓冲区中
/*
    参数都不为NULL
*/
void strcpy(char *des,char *sour)
{
        while(*des++=*sour++)
                ;
}
3.字符串的连接
void strcat(char *des,char *sour)
{
        //找到\0的位置 
        whi...
阅读全文 | 评论次数(3) | 浏览次数(296) | 所属类型(C语言学习)

[2012-01-31 13:44] C语言练习题四最大公约数,任意参数,分解数据

1求m 和 n的最大公约数
  int gcd(int m,int n)
  {
        if(m==0 || n==0)
             return 0;
        int temp;
        //保证m>n
        if(m<n)
        {
                temp = m;
                m = n;
                n = temp;
        }
        //gcd(m,n) = gcd(n,m%n)
        while(m%n)
        {
                temp=m%n;
                m=n;
                n=temp;
        }
        return n;

  }
/////////////////////////...
阅读全文 | 评论次数(0) | 浏览次数(319) | 所属类型(C语言学习)

[2012-01-30 17:05] C语言练习题三查找字符,删除指定字符串,反转字符串

1.查找字符
/*查找source字符串中匹配chars字符串中任何字符的第一个字符,并且返回该指针,没有返回NULL
param:source原字符串
param:chars 要查找的字符产
返回值:成功返回一个指向匹配字符的指针,否则返回Null
*/
char* find_char (char const *source,char const *chars)
{
        char c;
        char  *temp = NULL;
        while((c=*source++)!='\0')
        {
                temp = chars;//每一次初始化为chars
                while(*t...
阅读全文 | 评论次数(0) | 浏览次数(384) | 所属类型(C语言学习)

[2012-01-29 22:33] C语言学习操作符和表达式

点击查看原图
1.对于无符号数的右移位,实行的是逻辑移位,左边用0补上。
2.位操作符可以把指定的某一位,赋值为0或1.
  赋值1:value = value | 1<<number;
      0: value = value & ~(1<<number);
3.任何非零值皆为真。
4.fgets(char*,size,stdin)从标准输入中输入字符,\n也算作字符,并且自动加上\0.如果输入的字符超了,最后一位是\0,多余的字符和\n都舍弃了。
5.练习
  1>编写函数unsigned int reverse_bits(unsigned int value)这个函数的返回值是把va...
阅读全文 | 评论次数(0) | 浏览次数(457) | 所属类型(C语言学习)

[2012-01-29 18:49] C语言练习题二:把一个字符串中连续多个空格换成一个

编写一个函数,从一个字符串中去除多余的空格。函数的原型如下:
  void delblack(char str[])
当函数发现字符串中如果有一个地方由一个或多个连续的空格组成,就把它们改写成单个空格字符。注意当你遍历整个字符串时要确保它以\0字符结尾。
   void deblack(char str[])
   {
        int balN = 0;;计算空格的数量
        char* start = str;
        while(*start!='\0')
        {
                if(*start==' ')
                {
                        balN++;
                }
                else//不是空格,进行赋值
                {...
阅读全文 | 评论次数(3) | 浏览次数(491) | 所属类型(C语言学习)

[2012-01-29 14:22] C语言练习题一:计算从出生日到现在的天数

#include <stdio.h>
#include <time.h>
/*
*获得当前的年份
*/
int get_now_year()
{
        int now_year;
        time_t timer;
        struct tm *tblock;
        timer = time(NULL);
        tblock = localtime(&timer);
        now_year = 1900 + tblock->tm_year;
        return now_year;
}
/*
*获得当前的月份
*/
int get_now_month()
{
        int now_year;...
阅读全文 | 评论次数(3) | 浏览次数(398) | 所属类型(C语言学习)
页码数(2):  1  2