iOS之C语言初学小结

1、转义字符注意

         printf(" 今天是一个好日子“,”\n") 中红色要显示写中文的没问题,写英文的要加转义符\

       如 printf("今天是个好日子\" , \" \n" )  \n表示换行、\t表示空格 %%表示%

 2、scanf函数

        scanf函数是一个阻塞式函数如
       char a;
       scanf("%c",&a);
       printf(“a=%c”,a);
    需要用户输入一个字符才能打印 a的值,需要注意的是用户输入的数存在缓冲区,scanf也现  在缓冲区取值 ,如 用户输入一个回车,则用户不必再输入上面程序已经停止。因为回车\n  是一个字符,空格也是一样,已经被scanf接收。在%c前面加空格可以吸收掉空格或者回车  如scanf(" %c",&a)

3、sizeof单目运算符并不是函数计算的结果是unsigned long类型
   
             sizeof操作符以字节形式给出其操作数所占存储空间的大小

           如sizeof(1);括号里面可以是常量,可以是数据类型 ,注意char ch=‘a’;

          sizeof(‘a’)的值是4,sizeof(ch)的是 1 ,因为字符常量’a’可已转换成对应的int数

4、switch语句
            switch(){
            case 常量表达式:
                   语句块1;
                     break;
     default:
                 语句块2;
                  break;
}
    switch后面括号()里只能是能变成整数类型的表达式,当case里不加break会发生穿透。
   case后面不能立即声明变量,非要声明,在声明之前加n条语句,case后面不加大括号在其他case块可以访问,但是其值,如果声明的是字符,这在其他case块里是空,如果是int或   者浮点数在其他case块里是0

5、for循环实例理解

/* 

   

   *

  ***

 *****

*******

 *****

  ***

   *


 

 */


#include <stdio.h>


int main() {

    

    printf("请输入菱形的行数注意行数是基数\n");

    

    int n;

    scanf("%d",&n);

    

    /*  分析图形,图形可以看成是从中间分成上下两部分组成,上边可以看一看成是由左边空格,加右边*组成

        左右两边是并列关系,统一写在一个for循环里,同理下部分和上部分是一样

    */

          //上部分有n/2+1

        for (int i = 1;i<=n/2+1; i++) {

         /*

         从图可以看出上部分每行空格数是等于上部分总行数(n/2+1-当前行号i

         */

                for(int j = 1;j<=(n/2+1)-i;j++){

                 

                       //打印空格

                       printf(" ");

                }

            

                  for (int k=1; k<=2*i-1; k++) {

                      //打印*

                      printf("*");

                }

            //每打印一次空格和*换一行

                    printf("\n");

            

        }

           //下部分同理上部分并列关系

    for (int i = 1;i<=n/2; i++) {

        

        for(int j = 1;j<=i;j++){

            

               printf(" ");

        }

        

        for (int k=(n/2-i)*2+1; k>=1; k--) {

            

              printf("*");

        }

        

        printf("\n");

        

    }


    return 0;

}


以上仅为几个小点的总结。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值