《ios零基础教程》 ----for循环、函数 2014-3-23总结

昨天给电脑装系统,折腾到今天上午才折腾好,今天补上昨天的学习内容。

昨天学习了for循环、函数。


一、for循环

1.结构

 for (语句1; 条件 ; 语句2)

 {

    循环体

 }

 语句1:初始化语句(整个for循环只会执行一次)

 语句2:增量语句(执行完循环体后再执行的语句)



2.特点

 1>for一开始就会执行一次语句1(整个for循环只会执行一次)

 2>判断条件是否成立,如果条件成立,就会执行一次循环体,然后就会执行语句2,再判断条件是否成立

#include <stdio.h>

int main(int argc, const char * argv[])
{
    
    //for循环
    for (int count = 0; count < 50; count++) {
        printf("做第%d次俯卧撑\n",count);
    }
    
    //for循环,另一种写法
    for (int count = 0; count < 50; printf("做第%d次俯卧撑\n",count), count++) {
        
    }
    
    //实现同样条件,while循环
    int count = 0;
    while(count < 50){
         printf("做第%d次俯卧撑\n",count);
        count++;
    }
    
    //逗号运算符
    printf("做俯卧撑\n"),printf("哈哈哈\n");
    
    
    return 0;
}


3.for循环的注意事项


#include <stdio.h>

int main(int argc, const char * argv[])
{
    /*不要随便在for()后面写分号
     for (int i = 0; i < 5; i++)
     {
        printf("哈哈\n");
     }
     */
    
    /*错误写法,如果for()后面{}取消,就执行紧挨着的语句,不能有空行
     for (int i=0; i<5 ; i++)
     
        int a = 10;
     */
    
    /*错误写法,作用域问题,这里的a只能用在循环体{}中,当执行完之后,{}中数据消失,则相当于a++,并没有定义a
     for(int i = 0; i <10;i++ ,a++)
     {
        //a只能用在循环体{}中
        int a = 10;
     }
     */
    
    //作用域问题,当执行时,{}内没有定义a的值,所以他会出去寻找a=9的值
     int a = 10;
     
     for(int i = 0,a = 9; i < 5; i++)
     {
        //int i = 10;
     
        printf("a = %d\n",a);
     }
     
    
    //最简单的利用for循环实现死循环
    for(;;);
    
    
    return 0;
}

4.循环嵌套


/*
 输入下面内容
 
 好友列表1
    好友1
    好友2
    好友3
    好友4
    好友5
    好友6
 好友列表2
    好友1
    好友2
    好友3
    好友4
    好友5
    好友6
 */

#include <stdio.h>

int main(int argc, const char * argv[])
{

    for (int i = 0; i < 5; i++) {
        printf("好友列表%d\n",i+1);
        
        for (int j = 0; j < 3; j++) {
            printf("    好友%d\n",j + 1);
        }
    }
}

5.练习:

 提示用户输入一个正整数n,如果n=5,就输入下列图形,其他n值以此类推

 *****

 ****

 ***

 **

 *


#include <stdio.h>

int main(int argc, const char * argv[])
{
    //1.定义一个变量存储用户输入的值
    int n = 0;//一定要初始化
    
    //2.判断n值合不合理
    while(n <= 0){
        
        //2.1提示用户输入正整数
        printf("请输入一个正整数:");
        
        //2.2接收输入的数据
        scanf("%d",&n);
    }
    
    //3.输出图形
    for (int i = 0; i < n; i++) {
        for (int j = 0; j <n-i; j++) {
            printf("*");
        }
        printf("\n");
    }
 
    return 0;

6.对整个流程控制总结


一、选择结构
1.if
1>结构
if(条件)
{

}else if{

}else if{

}else{

}
2>特点:
*同一时刻,只有一个大括号里面的代码会被执行

2.switch
1>结构
switch(数值)
{
    case 数值1:
        break;
    
    case 数值2:
        break;
        
    case 数值3:
        break;
        
    default:
        break;
}

2>特点:
*默认情况下,只有一个case后面的代码会被执行
*如果一个case后面没有break,而且这个case成立,就会按顺气执行后面所有case中的语句,知道遇到break为止
*如果要在case后面定义一个新的变量,必须用大括号{}包住

二、循环结构
1.while
特点:如果一开始条件就不成立,永远不会执行循环体

2.do while
特点:不管条件是否成立,至少会执行一次循环体

3.for

4.选择
1>一般优先使用for循环
2>然后在考虑while
3>最后再考虑do while

7.continue和break的使用注意事项

/*

 break:

 1.使用场合   

 1>switch语句:退出整个switch语句

 2>循环结构:退出整个循环语句

    *while

    *do while

    *for

 2.注意点:

 

 

 continue:

 1.使用场合

   循环结构:结束当前这次的循环体,进入下一次循环体

    *while

    *do while

    *for

 2.注意点

 */


#include <stdio.h>


int main(int argc,constchar * argv[])

{

   /*

     for (int i = 0;i < 5;i++)

     {

        printf("%d\n",i);

     

        if (i%2)

        {// i为整数:13

            continue;

        }

     }

     */

    

    

   for (int i =0; i<3;i++)

        {

       for (int j =0;j <2;j++)

            {

           if (j ==1)

                {

//                continue;

               break;

                }

           printf("A\n");

            }

//        break;

       printf("B\n");

        }

   return0;

}



二、函数

1.函数的定义

 返回值类型  函数名(形式参数列表)

 {

    函数名

 }


2.函数的基本使用

#include <stdio.h>

int  printLine()
{
    printf("---------------\n");
    return 0;
}

int average(int num1 ,int num2)
{
    return (num1 + num2)/2;
}


int main(int argc, const char * argv[])
{
//    printLine();
//    printLine();
    
    int a = 10;
    int b = 9;
    
    int c = average(a , b);
    
    printf("c is %d\n",c);
    
    int a1 = 11;
    int b1 = 20;
    
    int d = average(a1, b1);
    printf("d is %d\n",d);
    
    
    return 0;
}

3.函数的基本点:

 1>形式参数:定义函数时函数名后面()中的参数,简称形参

 2>实际参数:调用函数时传入的具体数据,简称实参

 3>实参个数必须等于形参个数

 4>函数体内部不能定义和形参一样的变量

 5>如果是基本数据类型作为函数形参,纯粹是值传递,修改函数内部形参的值,并不会影响外面实参的值,充分演示了函数内存执行的整个过程

 6>一个函数可以没有形参,也可以由无限多个形参


#include <stdio.h>

//形式参数,简称形参
int sum(int num1 ,int num2)
{
    //函数体内部不能定义和形参一样的变量
    //int num1;
    
    num1 = 50;
    return num1 + num2;
   
}

int main(int argc, const char * argv[])
{
    //a、b称为函数的实际参数,简称实参
    int a = 100;
    int b = 27;
    
    int c = sum(a , b);
    
    //这里充分演示了函数内存执行的整个过程,看博客图
    printf("a = %d , b = %d ,c =%d\n",a , b , c);
    return 0;
}

此图为上面函数内存分布思考图。



4.关于returen函数的作用

 return的作用

 1>退出函数

 2>返回一个具体值给函数调用者


 返回值注意点:

 1>void代表没有返回值

 2>如果没有明确说明返回值类型,默认返回为int类型

 3>就算明确声明了返回值类型,也可以不返回任何值


#include <stdio.h>

char test()
{
    return 'A';
}

int tset2(){
    printf("888888888\n");
//    return 10;
}

/*伪代码
void login(QQ,密码)
{
    //1.验证QQ有没有值
    if (QQ没有值) return;
    
    //2.验证密码有没有值
    if (密码没有值) return;
    
    //3.把QQ、密码发送到服务器
}*/


int main(int argc, const char * argv[])
{

    int c = test2();
    printf("c=%d\n",c);
    return 0;
}

昨天就学到这里。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值