考研机试c语言总结

  • while 如果要判断一个相等的条件,就用 ==

  • char *s = “xxxx”char s[] = "xxx" 是有区别的,后者,在函数进行参数传递时,可以用 s[i] ;而前者不能用,会出现报错使用未分配的空间。

  • #include<string.h> 中的 strlen 函数,所求的长度不包含 '\0' ;而 sizeof 所求的长度则包含 '\0';所以sizeof 所求的长度比 strlen 所求的长度多1。

  • 打印字符串时,采用的时 %s 可直接把字符串打印出来(以 \0 作为结尾)。

  • 字符串的输入:

    //当要输入一个不知道长度的字符串或者数字时,采用此方法。
    char str[100];
    scanf ("%s",str); //采用%s直接输入字符串,并且str直接表示地址。
    
    int l = strlen (str); //算出字符串的长度。
    int sum = 0;
    for (int i = 0;i < l; i++){
           //计算各个位数的和
        sum = sum + str[i] - '0'; //把字符型格式转换为整数型。 “  - '0' ”
    }+ '0'” 是转换为字符
    
    
  • 字符串进行传递:

    int strStr(char* haystack, char* needle) {
         
        //如第二条所说,可以使用haystack[i]和needle[i]
    }
    
    int main (){
         
        char haystack[] = "sleetcode";  //字符串用“”  字符用‘’
        char needle[] = "co";
        printf ("%d",strStr(haystack,needle))
        return 0}
    
  • 输入带有空格的数字串

    while (1){
         
            scanf ("%d",&A[num]);
            num ++;
            char c = getchar(); //获取键盘的输入
            if (c == '\n'){
         
                break;
            }//if
        }//while
    
  • 输入带有空格的字符串

    char str[1000];
    scanf ("%[^n]",str); //"%[]"表示的含义
    //或者可以用
    gets(str);
    scanf ("%[^]]",str); //表示当输入到]时停止输入,如果没有加^则表示只输入【】内有的,如果碰到没有的就结束输入。
    //gets下运用strlen
    int len = strlen(str);
    for (int i = 0;i <= len;i++){
         
    	//这样才能遍历数组,一定要注意有=!!!
    }
    
  • 交换两个变量的值(结构体也是同样的操作)

    void swap (int *a,int *b){
         
        int temp;
        temp = *a;
        *a = *b;
        *b = temp;
    }
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值