C语言 - 技术教程文章

C语言九九乘法表!

#include <stdio.h>  int main(void){   int x,y;   for(x=1;x<=9;x++){     for(y=1;y<=x;y++){       printf("%d*%d=%d ",x,y,x*y);      }      printf("\n");   }}原文:http://www.cnblogs.com/zxj-forever/p/4125109.html

C语言之函数调用06—彩球排列

//函数调用+递归法 /* ========================================================== 题目:将4个红球,3个白球,3个黄球排成一排,共有多少种排法?球无编号! ========================================================== */ #include<stdio.h> int J(int n) {if(n==0||n==1)return 1;elsereturn n*J(n-1); } int PL(int m,int n) {return J(m)/J(m-n)/J(n); } main() {int k,h;k=PL(10,4)*PL(6,3)*PL(3,3);printf("共有%d种排法...

【C语言】判断一个数的奇偶(位操作)

//判断一个数的奇偶 #include <stdio.h> int is_signal(int num) {if (num & 1)return 1;elsereturn -1; } int main() {int a;printf("请输入:");scanf_s("%d", &a);if (is_signal(a)==1)printf("奇数\n");elseprintf("偶数\n");return 0; }版权声明:本文为博主原创文章,未经博主允许不得转载。原文:http://blog.csdn.net/doudouwa1234/article/details/46696951

循环结构-判断一个数是否为完全数(C语言)【代码】

同http://www.cnblogs.com/MichaelLee2015/p/4402993.html #include <stdio.h>int main() {int num;//表示输入的数printf("请输入一个正整数,这个程序将判断此数是否为完全数\n");//提示用户输入scanf("%d",&num);//获取输入的数int sum = 0;//表示最后所有因子的和//思路:找出这个数num所有的因数并且相加得到sum,看是否等于这个数for (int i = 1; i < num; i++){if (num % i == 0)//余数为0,即整除,也就是说i为num的因子 ...

【c语言】求绝对值【图】

// 求绝对值#include <stdio.h>int fabs(int a) {if (a < 0){a = ~a + 1;}return a; }int main() {printf("绝对值是:%d\n", fabs(5));printf("绝对值是:%d\n", fabs(0));printf("绝对值是:%d\n", fabs(-1));return 0; }版权声明:本文为博主原创文章,未经博主允许不得转载。原文:http://blog.csdn.net/zhaoyaqian552/article/details/46696745

问题 1043: C语言程序设计教程(第三版)课后习题10.1【代码】

/******************************************************************** @file Main.cpp @date 2017-05-29 12:55:07 @author Zoro_Tiger @brief 问题 1043: C语言程序设计教程(第三版)课后习题10.1http://www.dotcpp.com/oj/problem1043.html ********************************************************************/ #include <cstdio> #include <algorithm> #include <vector>#define TEST #undef TEST #defin...

【C语言】输出字符串【代码】

#include<stdio.h> #include<string.h> #include<windows.h>int main() {char arr1[] = "###############";char arr2[] = "welcome to bit!";int left = 0, right = 0, i = 0,size=0;size = strlen(arr1) ;right = size - 1; // 减一为数组下标printf("%s\n", arr1);for (i = 0; i < (size + 1) / 2; i++) //左右同时替换,共需8次完成{arr1[left] = arr2[left];arr1[right] = arr2[right];left++;right--;printf("%s\n", arr...

C语言学习入门 (六) 预处理指令:宏、条件编译、文件包含

预处理指令1.C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源程序(这个过程称为编译预处理),之后再进行通常的编译2.为了区分预处理指令和一般的C语句,所有预处理指令都以符号"#"开头,并且结尾不用分号3.预处理指令可以出现在程序的任何位置,它的作用范围是从它出现的位置到文件尾。习惯上我们尽可能将预处理指令写在源程序开头,这种情况下,它的作用范围...

【C语言探索之旅】 第二部分第六课:创建你自己的变量类型【图】

内容简介1、课程大纲2、第二部分第六课: 创建你自己的变量类型3、第二部分第七课预告: 文件读写课程大纲我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案。还会带大家用C语言编写三个游戏。C语言编程基础知识什么是编程?工欲善其事,必先利其器你的第一个程序变量的世界运算那点事条件表达式循环语句实战:第一个C语言小游戏函数练习题习作:完善第一个C语言小游戏C语言高级技术模块化编程进击的指针,C语...

c语言基本数据类型short、int、long、char、float、double【图】

C 语言包含的数据类型如下图所示:一、数据类型与“模子”short、int、long、char、float、double 这六个关键字代表C 语言里的六种基本数据类型。怎么去理解它们呢? 举个例子:见过藕煤球的那个东西吧?(没见过?煤球总见过吧)。那个东西叫藕煤器,拿着它在和好的煤堆里这么一咔,一个煤球出来了。半径12cm,12 个孔。不同型号的藕煤器咔出来的煤球大小不一样,孔数也不一样。这个藕煤器其实就是个模子。现在我们联想一下,short、...

C语言作业(三)【代码】【图】

一。完成PTA上四题作业二。具体解题(一)。A乘以B1.实验代码#include <stdio.h> int main() {int A,B,C;scanf("%d %d",&A,&B);C=A*B;printf("%d",C);return0; }2.设计思路A:将要输入的正整数定义B:套用公式C:输出结果3.本题调试中遇到的问题及结果本题未遇到问题4.运行结果(二)。求整数均值1.实验代码#include <stdio.h> #include <stdlib.h> int main() {int a,b,c,d;float e,f;scanf("%d %d %d %d",&a,&b,&c,&d);e=a+b+c+d...

鹦鹉学舌1——C语言初学者百题大战之三【代码】

#include<stdio.h> int main() {int a;scanf("%d",&a);printf("%d",a-a+a);return0; } 原文:https://www.cnblogs.com/chenlong991223/p/9645997.html

C语言 · 求先序遍历【代码】

算法训练 求先序排列 时间限制:1.0s 内存限制:256.0MB 锦囊1  后序的最后一个字母为根结点。 问题描述  给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。输入格式  两行,每行一个字符串,分别表示中序和后序排列输出格式  一个字符串,表示所求先序排列  样例输入  BADC  BDCA样例输出ABCD 作者注释:解此题,狠狠的复习了一把先、中、后序遍历二叉树。...

C语言查漏补缺——指针【代码】【图】

本节将详细分析指针。一、指针 指针实际上也是一个变量,不过这个变量与众不同的是,他存的值是一个地址。 int a = 4; int* p = &a; 这段代码的内存如图所示 从图中可以看出,p本质上也是一个变量,只是这个变量比较特殊,他的值是a变量的地址。 这个时候,我们通过*号就可以访问p变量存储的这个地址所保存的值,这句话读起来可能有点绕。简单来说,就是*p这样做以后,读到的实际上是a的值,也就是说*...

斐波那契数列的实现(C语言)

int fibonacci(int positon){  if(position==1||position==2){    return 1;  }  return fibonacci(position-1)+fibonacci(position-2);}void test(){  int result=fibonacci(5);//查看斐波那契数列中第五个数的值  printf("%d\n",result);}原文:https://www.cnblogs.com/yyslif/p/11559855.html

C语言总结

后缀名.c的文件是C程序的源文件 1.新建文件 终端-> cd 路径 ->touch main.c2.编译文件 终端-> cc -c main.c 会生成出main.o文件 对应.c文件的二进制代码3.生成启动文件 终端-> cc main.o 会生成出a.out文件,此文件为最终可以执行的程序4.执行a.out程序 终端-> ./a.out 即可执行程序内容 XCode 编译器Command + R 编译运行Command + B 编译Command + , 设置 Text Editiong -> Line numbers 行号 在project下创建多个target 点击...

007-函数-C语言笔记

学习目标1.【了解】函数的分类2.【掌握】函数的声明定义和调用3.【掌握】函数的形参和实参4.【掌握】带返回值的函数5.【掌握】全局变量和局部变量6.【了解】注释插件的安装和使用一、函数的分类C程序是由一个一个的函数组成的,我们每天使用的main函数也是函数。其实函数在其他编程语言里也叫方法,java,c++,以及我们后面马上要开始学习的objective-c中,函数都叫他方法。函数可以分为三大类:1.主函数,每个程序中有且只能有一个...

C语言函数sscanf()的用法(转)

转自:http://www.cnblogs.com/lyq105/archive/2009/11/28/1612677.htmlC语言函数sscanf()的用法sscanf() - 从一个字符串中读进与指定格式相符的数据.  函数原型:  int sscanf( string str, string fmt, mixed var1, mixed var2 ... );  int scanf( const char *format [,argument]... );  说明:  sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者以固定字符串为输入源。  其中的format可以是...

关于C语言静态链接的个人理解,欢迎指正【代码】【图】

摘要:本篇主要介绍在静态链接中多个文件合并、地址确定、符号解析和重定位相关问题,以GCC编译器为例。 首先,链接器链接多个文件时,采用何种方式合并为一个文件?方式一,按序叠加,即多个文件依次叠加起来;方式二,相似段合并。采用何种方式就要看哪种方式利大于弊。 方式一:这种方式实现简单,链接速度快,基本不需要太多操作。但是,通常简单的东西往往是粗暴的。我们知道gcc编译后得到的可重定位目标文件是由各种段...

C语言for循环的一些注意细节【代码】

在使用for循环接收处理数组的时候,有时候要回到数组的首位置。以前没有注意这个问题,以为循环变量置0就可以,实际不是这样的。先来看一下for循环的反汇编代码,如下:Unit1.cpp.595: for(int i=0;i<3;i++) 00402938 33C0 xor eax,eax 0040293A 8945F4 mov [ebp-0x0c],eax Unit1.cpp.597: i = 0; 0040293D 33D2 xor edx,edx 0040293F 8955F4 mov [ebp-0x0c],edx Unit1.c...

【C语言探索之旅】 第一部分第五课:运算那点事【图】

内容简介1、课程大纲2、第一部分第五课:运算那点事3、第一部分第六课预告:条件表达式课程大纲我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案。还会带大家用C语言编写三个游戏。C语言编程基础知识什么是编程?工欲善其事,必先利其器你的第一个程序变量的世界运算那点事条件表达式循环语句实战:第一个C语言小游戏函数练习题习作:完善第一个C语言小游戏C语言高级技术模块化编程进击的指针,C语言王牌数组字...

程序猿之---C语言细节(指针和数组细节,"//"的可移植性说明)【图】

主要内容:指针和数组细节,"//"的可移植性说明#include <stdio.h>int main(int argc, char **argv) {int a[10]={1,2,3,4,5,6,7,8,9,0},*p;#if 0 /*按移植性来说,在《c语言程序设计--现代方法》指出要用当前注释方法,而不是// 因为一些编译可能不支持 */ // 错误举例 while(*a != 0){a++; // a++ 相当于a = a+1,不能改变a的值// 而*(a+1) = 12;是可以的,a[1]= 12;// a 可以代替 &a[0], a+1可以代替&a[1] } #elif 1 ...

C语言指针理解【代码】【图】

C语言指针理解#include <stdio.h> int main(void){ int zippo[4][2] = {{2,4},{6,8},{1,3},{5,7}}; printf(" zippo = %p, zippo + 1 = %p\n",zippo,zippo +1); printf(" zippo[0] = %p, zippo[0] + 1 = %p\n",zippo[0],zippo[0] +1); printf(" *zippo = %p, *zippo + 1 = %p\n",*zippo,*zippo +1); printf(" zippo[0][0] = %d\n",zippo[0][0]); printf(" **zippo = %d\n",**zippo); printf(" *zippo[0...

一起talk C栗子吧(第四十五回:C语言实例--深度优先遍历二)【图】

各位看官们,大家好,上一回中咱们说的是深度优先遍历的例子,这一回咱们继续说:深度优先遍历。闲话休提,言归正转。让我们一起talk C栗子吧! 大家可能会问:咱们上一回刚刚说了深度优先遍历呀,怎么这一回还说它?看官们莫急,我们在上一回中说了如何使用深度优先遍历方法去遍历图,在实现该方法时使用的是递归原理。我们在这一回中使用循环原理来实现深度优先遍历,也就是说这是同一个遍历方法的两种不同实现形式。关于深度优先...

C语言(挑战ACM-ICPC,DEVFORGE学编程社区)【代码】

1、Double 1 #include <stdio.h>2int main()3{4int arr[20] = {0}, i, x, count=0; 5for(i=0; ; ++i){6 scanf("%d",&x);7if(x==0) break;8 arr[i] = x;9 } 10for(int j=0; j<i; ++j){ 11if(arr[j]%2) continue; 12for(int k=0; k<i; ++k){ 13if(arr[j]/2==arr[k]) 14 count++; 15 } 16 } 17 printf("%d",count); 18return0; 19 }2、Houseboat 1 #include <stdio.h>2 #inclu...

1014_C语言的文法

程序-> <外部声明><程序><外部声明>外部声明-> <函数定义>|<声明>函数定义-> <函数类型><说明符><复合语句>函数类型-> void|char|int|float说明符-> <指针 ><直接说明符>|<直接说明符>指针-> <*>|<*><指针>直接说明符-> <标识符>|<直接说明符[]>|<直接说明符[常量表达式]>|<标识符(参数序列)>|<标识符()>|<直接说明符,标识符序列>标识符序列-> <标识符>|<标识符序列><,><标识符>常量表达式-> <条件表达式>参数序列-> <参数声...

C语言中 stdlib.h中的qsort排序用法

今天在刷leetcode的时候,发现快排居然C语言也有写好的库函数直接调用。真神奇。  一共有其中排序qsort的排序用法。  需要注意的是排序都是采用的从小到大的排序。一、对int类型数组排序int num[100];int cmp ( const void *a , const void *b ){return *(int *)a - *(int *)b;}qsort(num,100,sizeof(num[0]),cmp);二、对char类型数组排序(同int类型)char word[50];Sample:int cmp( const void *a , const void *b ){return ...

C语言的观察者模式

/*hdr ** Copyright ... ** AUTHOR MichaelMa ** DATE 4-May-2014 ** DESCRIPTION implement a mode of observer in C ** NOTE may be some bugs */ #include <stdio.h> #include <stdlib.h> #include <string.h>/***************************DEFINES************************************/ #define MAX_LIST_CNT 10 #define MAX_ID_LEN 256/*zero members...

在VS2008环境下编写C语言DLL,并在C++和C#项目下调用 (转载)【图】

1、编写DLL a)文件--打开--新建项目--Win32,右侧Win32项目,填写好项目名称,点击“下一步”, 应用程序类型选择:“DLL(D)”,附加选项:空项目(E),然后完成。 b)编写头文件(edrlib.h):#ifdef __cplusplus #define EXPORT extern "C" __declspec (dllexport) #else #define EXPORT __declspec (dllexport) #endif EXPORT void EdrCenterTextA(); EXPORT void EdrCenterTextW(); EXPORT int In...

C语言博客作业--数据类型【图】

一、PTA实验作业题目1: 7-3 倒顺数字串1. 本题PTA提交列表2.设计思路定义变量i,j,n放输入的数输入n的值如果n的值为1,直接输出1如果n的值不为1 for(i=1;i<=n;i++) 执行n次循环,每次输出i的值和一个空格for(j=n-1;j>0;j--) 执行n-1次循环每次输出j的值, 如果j不为1,后面每次再输入空格3.代码截图4.本题调试过程碰到问题及PTA提交列表情况说明部分错误:改代码开始时当n=1时的情况输出错误。解决:因为只有一种情况所以用了一个...