有关C语言编程

统计代码“行数”

对于统计代码“行数”,行数不包括空白行和注释行。程序改进如下:

 while(fgets (mystring , 100 , fp)!=NULL)//按字符串读入mystring,最多读入长度100
{
if (fp == NULL) printf("Error opening file");
else
{
if(mystring[0]=='/' && mystring[1]=='*')//判断开头有没有/*
{
while(mystring[strlen(mystring)-1]!='*' && mystring[strlen(mystring)-2]!='/')//开头有/*就进入循环不断读取,
//直到读到*/,这样这一段都不会被记入
{
fgets(mystring,100,fp);
}
fgets(mystring,100,fp);
}
hangshu+=judge(mystring);
}
}

这是判断//和空行的函数

int judge(char mystring[]){
if(strcmp(mystring,"\n") && (mystring[0]!='/' && mystring[1]!='/'))//如果读入的这行第一第二个字符不是‘\\’,不是空行就记入
{
return 1;
}
return 0;
}

这个c++文件一共345行,亲自数了数空白行和注释行,减掉之后的确是269行。

char ((x[4])())[4]这个声明中的x是什么

参考了ZTE笔试中的char ((x[3])())[5]解释

分析如下:

  • x[4]:x是四个元素的数组
  • (x[4])():x是4个元素的数组,元素是函数的返回值
  • char ((x[4])())[4]:x是四个元素的数组,元素是函数的返回值,又是char数组的数组名。

数组复制,查找,排序C有相关库函数

  1. C语言里只有字符数组存在库函数strcpy可以进行字符串复制,其它数组没有。
#include <stdio.h>
#include <string.h>
int main()
{
//字符数组复制
char string[100];
strcpy(string,"I am a student.");
puts(string);
return 0;
}

2.查找、排序的C语言相关库函数,参考数据结构与算法-----搜索和排序(C语言库函数的使用)

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int cmpInt(const void *a,const void *b)
{
return *(const int*)a - *(const int*)b;
}
int main()
{
int i,j,num,size,searchNum;
int *ip;
/*对数字进行排序和搜索*/
int Int[100];
for(i=0;i<100;i++)
{
scanf("%d",&Int[i]);
if(Int[i]==-1)
break;
}
num=i;//数组中元素数量
size=sizeof(Int[0]);//每一元素大小
qsort(Int,num,size,cmpInt);//快排法排列数组
for(i=0;i<num;i++)
printf("[%d] ",Int[i]);
printf("\n");
printf("Pls input the search num:");
scanf("%d",&searchNum);
ip=bsearch(&searchNum,Int,num,size,cmpInt);/*此处为重点,传入的是欲查找关键数据的地址;找到关键数据返回地址*/
(ip==NULL)?puts("Not Found"):puts("Found");
return 0;
}

有关c语言编程的更多相关文章

  1. C语言编程实现Linux命令——who

    C语言编程实现Linux命令--who 实践分析过程 who命令是查询当前登录的每个用户,它的输出包括用户名.终端类型.登录日期及远程主机,在Linux系统中输入who命令输出如下: 我们先man一下 ...

  2. 个人c语言编程风格总结

    总结一下我个人的编程风格及这样做的原因吧,其实是为了给实验室写一个统一的C语言编程规范才写的.首先声明,我下面提到的编程规范,是自己给自己定的,不是c语言里面规定的. 一件事情,做成和做好中间可能隔了 ...

  3. Linux下C语言编程实现spwd函数

    Linux下C语言编程实现spwd函数 介绍 spwd函数 功能:显示当前目录路径 实现:通过编译执行该代码,可在终端中输出当前路径 代码实现 代码链接 代码托管链接:spwd.c 所需结构体.函数. ...

  4. 混合语言编程:启用CLR(公共语言运行时编译)让C#调用C++

    前言 关于混合C#和C++的编程方式,本人之前写过一篇博客(参见混合语言编程:C#使用原生的Directx和OpenGL),在之前的博客中,介绍了在C#的Winform和WPF下使用原生的Direct ...

  5. Linux基础与Linux下C语言编程基础

    Linux基础 1 Linux命令 如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命令行进行使用. 登录Linux后,我们就可以在#或$符后面去输入命令,有 ...

  6. LINUX下C语言编程基础

    实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...

  7. 第二章 C语言编程实践

    上章回顾 宏定义特点和注意细节 条件编译特点和主要用处 文件包含的路径查询规则 C语言扩展宏定义的用法 第二章 第二章 C语言编程实践 C语言编程实践 预习检查 异或的运算符是什么 宏定义最主要的特点 ...

  8. 华为C语言编程规范

    DKBA华为技术有限公司内部技术规范DKBA 2826-2011.5C语言编程规范2011年5月9日发布 2011年5月9日实施华为技术有限公司Huawei Technologies Co., Ltd ...

  9. 9 本免费的 Python 语言编程书籍(转载)

    9 本免费的 Python 语言编程书籍 原文地址:http://linuxtoy.org/archives/9-free-python-books.html 2010-03-03 Toy Poste ...

  10. linux 操作系统下c语言编程入门

    2)Linux程序设计入门--进程介绍 3)Linux程序设计入门--文件操作 4)Linux程序设计入门--时间概念 5)Linux程序设计入门--信号处理 6)Linux程序设计入门--消息管理  ...

随机推荐

  1. Facenet Triplet Loss

    Triplet Loss 在人脸识别中,Triplet loss被用来进行人脸嵌入的训练.如果你对triplet loss很陌生,可以看一下吴恩达关于这一块的课程.Triplet loss实现起来并不 ...

  2. WHY C++ ?(by Herb Sutter) & C++17 standard

    WHY C++ ? C++

  3. java程序文件读取与保存实例代码

    class RadioHere extends JFrame implements ActionListener { private JTextArea ta=new JTextArea(10,20) ...

  4. 执行composer install后报错:执行composer install后报错: d11wtq/boris v1.0.10 requires ext-pcntl * -> the requested PHP extension pcntl is missing from your system.

    执行composer install后报错: d11wtq/boris v1.0.10 requires ext-pcntl * -> the requested PHP extension p ...

  5. Python【logging】模块

    # 1.负责往控制台里面输出日志信息的 # 2.往日志文件里面写日志的,按天生成日志,清理日志 import logging from logging import handlers logger = ...

  6. Hadoop生态圈-Hbase的协处理器(coprocessor)应用

    Hadoop生态圈-Hbase的协处理器(coprocessor)应用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  7. html基础知识汇总(二)之Emmet语法

    div.imageBox+div.infoBox+input[type="button" class="starBtn"]*3 <div class=&q ...

  8. Perl file checking --- How to get information about a file

    There are some short expressions in Perl that allow you to test files, which is handy if you want to ...

  9. codevs 1070 普通递归关系

    1070 普通递归关系  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 大师 Master     题目描述 Description 考虑以下定义在非负整数n上的递归关系 f( ...

  10. MySQL学习(一)——Java连接MySql数据库

    MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...