------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

一、函数

  1. 定义:函数是代码复用的一种机制.
  2. 函数的基本语法:

返回类型 函数名 ( 参数类型 参数名, ... ) {
               语句;
             return ...
         }

3.函数的分类:

根据参数分可以分为  1.有参数函数,2.无参数函

          根据返回值分可以分为 1.有返回值函数  2.无返回值函数

4.下面我举一个简单的有参数有返回值函数的例子:

 #include <stdio.h>

 int getSum(int num1, int num2) { //num1,num2就是getSum函数的参数,这个函数返回的是一个int类型的
int res = num1 + num2; return res; // 利用 return 语句返回 res 的结果
} int main(int argc, const char * argv[]) { int n = 10;
int m = ; int res = getSum(n, m); printf("%d\n", res); return ;
}

二、数组

  1. 定义:一个数组就是多个变量的有序集合,

    1、定义一个数组,就定义了很多的变量
    2、这每一个变量都是数组的一个元素或成员
    3、数组是一个有序的集合,也就是说可以使用一个数字引用变量
    4、数组中每一个元素的使用和一个一般的变量使用一样

  2. 一维数组:一维数组是元素都不是数组的数组。
  3. 语法:

    数据类型 数组名[ 数组长度 ];

  4. 数组的初始化:1、完全初始化
    int nums[5] = { 1, 2, 3, 4, 5 };

    2、不完全初始化,没有提供数据的默认初始化为 0
    int nums[10] = { 1, 2, 3, 4, 5 };

    3、省略数组长度,由编译器自动判断
    int nums[] = { 1, 2, 3, 4, 5 };

  5. 实用for循环遍历数组:
    #include <stdio.h>
    int main(int argc, const char * argv[]) { int array[] = { , , , , , , };//定义一个数组并初始化 for (int i = ; i < ; i++) {//使用for循环来遍历这个数组
    printf("%d\n", array[i]);//打印第i个元素
    } return ;
    }

三、字符串

  1. 定义:

    字符串就是使用双一号括起来的内容

    例如:
    "张三"
    "Hello World"

  2. 字符串与数组的关系:

    C 语言中没有描述字符串的数据类型
    OC 中有 NSString
    C# 中有 string
    Java 中有 String

    在 C 语言中使用一个以 '\0' 结尾的字符数组来描述字符串

  3. 、字符串的初始化:

    字符串的初始化方式

    char chs[] = "Hi"; // 默认自动添加 '\0'

  4. 在输入字符串的时候有scanf 和gets函数,下面我给大家来结合以上的函数知识点来自定义个getstring函数来输入字符串
    #include <stdio.h>
    
    void getString(char str[], int length) {
    int i = ; while () { if (i == length - ) {
    str[i] = '\0';
    while(getchar() != '\n') ; // 清空缓存的数据
    break;
    } char c = getchar(); // 从缓存中获取一个字符, 注意缓存中也许还有很多字符 if (c == '\n') {
    str[i] = '\0';
    break;
    } // 不为输入结束
    str[i] = c; i++;
    }
    } int main(int argc, const char * argv[]) { char str[]; getString(str, );//调用这个自定义函数 printf("%s\n", str); return ;
    }

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

黑马程序员网址:http://www.itheima.com

黑马程序员—C语言的函数、数组、字符串的更多相关文章

  1. 黑马程序员——C语言基础 函数

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)函数的定义 1> 任何一个C语言程序都是由一个或者多个程序段( ...

  2. 黑马程序员——C语言基础语法 关键字 标识符 注释 数据及数据类型

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (一下内容是对黑马苹果入学视频的个人知识点总结) (一)C语言简单介绍 (1)C语言程序是由函数组成的任何C语言程序都是由一 ...

  3. 黑马程序员——C语言基础 枚举 宏定义 自定义 static exterm

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)枚举 1)枚举类型的定义 枚举是C语言中的一种基本数据类型,并不是构 ...

  4. 黑马程序员——JAVA基础之函数,重载,内存结构

      ------- android培训.java培训.期待与您交流! ---------- 函数: 什么是函数? • 函数就是定义在类中的具有特定功能的一段独立小程序. • 函数也称为方法. 函数的格 ...

  5. 黑马程序员——C语言基础 char字符 数组

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)char类型 1)存储细节 ASCII单字节表(双字节GBK\GB2 ...

  6. 黑马程序员——C语言基础 scanf函数 基本运算 三目运算符

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (一下内容是对黑马苹果入学视频的个人知识点总结) (一)scanf函数 1>  简单介绍一下scanf函数   这是在 ...

  7. 黑马程序员-- C语言交换两个整数变量值几种函数比较

    总结了C语言中几种交换两个整数数值的函数,欢迎交流 #include <stdio.h> 使用多种交换变量值的函数比较 方法一:使用第三方临时变量 这种函数a,b只是值传递,实质上不能修交 ...

  8. 黑马程序员——C语言基础 指针

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)指针 首先指针是C语言中非常重要的数据类型,如果你说C语言中除了指针 ...

  9. 黑马程序员——C语言基础 变量类型 结构体

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)变量类型 1)局部变量 1> 定义:在函数内部定义的变量,称为 ...

随机推荐

  1. json格式键盘编码对照表

    整理了一份JSON格式的键盘编码对照表.欢迎转载,但请注明出处,谢谢! { VK_BACK: 8, //退格键 VK_TAB: 9, //TAB键 VK_RETURN: 13, //回车键 VK_SH ...

  2. [Locked] Missing Ranges

    Missing Ranges Given a sorted integer array where the range of elements are [lower, upper] inclusive ...

  3. 【bzoj2594】[Wc2006]水管局长数据加强版

    真是神题 当时调了几天没调出来 后来没管了 当时把fread去掉就TLE,加上就RE 一直在底下跟网上的程序拍,尝试各种优化常数都没用 拍出几组不一样的,发现我是对的,醉了,网上那个是怎么过的 记一下 ...

  4. Android FastJson解析

    1.导包 compile 'com.alibaba:fastjson:1.2.21' public static final Object parse(String text); // 把JSON文本 ...

  5. DFU工作过程中USB机制

    在一级bootloader执行进入USB启动方式之后,设备进行枚举.枚举过程中会通过PC端发送命令对连接的USB设备进行枚举.当枚举成功之后,在PC端可以看到设备的盘符. 当设备能够被PC正确识别之后 ...

  6. [PWA] 5. Hijacking one type of request

    Previously we saw how to Hijacking all the reqest, but this is not useful. So now we want to see how ...

  7. lnux内核的malloc实现(Oracle的cache buffer影子)

    lnux内核的malloc实现(Oracle的cache buffer影子) 本文原创为freas_1990,转载请标明出处:http://blog.csdn.net/freas_1990/artic ...

  8. linux服务器上的php代码通过nginx发布,解决pathinfo模式问题

    附件1为修改前的正常访问php配置文件      附件2为修改后的能通过url地址访问php项目的配置文件    具体操作网址 如下:www.itokit.com/2012/0308/73275.ht ...

  9. android之旅——开始

    1.文件的读取 io流读取文件,并且显示 package com.helloword; import java.io.BufferedReader; import java.io.File; impo ...

  10. 【VB】StrConv函数 vbUnicode用法

    [VB]StrConv函数 StrConv(string, conversion, LCID) vbUnicode 64 根据系统的缺省码页将字符串转成Unicode. vbFromUnicode 1 ...