有关c语言编程
2017-02-28 17:08
155 查看
有关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有相关库函数
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语言编程的三个数中大小排序程序
- stm32 编程的收获,有关C语言(在stm32 公交报站中的收获)
- C语言socket编程的分包和粘包的有关问题解决
- 有关C语言的数据统计和编程问题 高手请进
- 与size_t有关的C语言编程失误——memset,memcpy系列函数使用陷阱
- 这样学习Unix下C语言编程最有效
- 这样学习Unix下C语言编程最有效
- C语言探索之旅 | 开宗明义及第一部分第一课:什么是编程?
- C语言的编程机制
- C语言编程-----程序的内存布局
- C语言编程常见问题分析
- linux下的C语言编程(总结篇)
- c语言之良好的编程习惯(三)
- 编程高手进。 电脑C语言怎么学好
- linux下C语言编程1-gdb调试程序简介
- PAT乙级1047(C语言)-编程团体赛(20)
- '践踏堆栈'[C语言编程]
- 状态机的c语言编程
- 式 s(n)=1*1+2*2+,,,,.,n*n 用c语言编程的程序
- Linux C语言编程学习资料