第一天的学习

//输入两个数,得出他们的和
/*
#include<stdio.h>
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
scanf("%d%d",&num1,&num2);
sum = num1 + num2;
printf("sum = %d\n", sum);
//cout<<sum;
return 0;
}*/




//引用第三个变量实现两个整型互换;
/*
#include <stdio.h>
int main()
{
    int a = 3;
    int b = 5;
    int c = 0;

    c=a;
    a=b;
    b=c;
    printf("%d\n%d\n",a,b);
    return 0;
}*/



//交换两个整型变量
//^按位异或,相同为0,相异为1;
/*
#include<stdio.h>
int main()
{
    int a = 3;
    int b = 5;
    printf("交换前:a=%d b=%d\n",a,b);
    a = a^b;
    b = a^b;
    a = a^b;
    printf("交换后:a=%d b=%d\n",a,b);
    return 0;
}*/




//找出数组中只出现一次的数
/*
#include<stdio.h>
#include<limits.h>
int main()
{
    int arr[] = {1,2,3,4,5,4,3,2,1};
    //printf("%d\n",arr[5]);
    int i =0;
    int sz = sizeof(arr) / sizeof(arr[0]);//计算数组中的元素个数
    for(i = 0;i <sz; i++)
    {
        int count = 0;
        int j = 0;
        for(j = 0;j <sz; j++)
        {
           if (arr[i] == arr[j])
          {
              count++;
          }
        }
        if(count==1)
        {
           printf("%d\n",arr[i]);
           break;
    }
}
return 0;
}*/


//找出数组中只出现一次的数的简便方法;
/*
#include<stdio.h>
int main()
{
    int arr[] = {1,2,3,4,5,4,3,2,1};
    int i = 0;
    int sz = sizeof(arr) / sizeof(arr[0]);//计算数组里的元素个数
    int shu = 0;
    for(i = 0;i < sz; i++)
    {
        shu = shu^arr[i];
        //printf("%d\n",shu);要放在if语句外面才行,不然会循环一次就打印一次;
    }
    printf("%d",shu);
    return 0;
}*/


//shutdown -s -t 60  在60秒后关机;
//shutdown -a 取消关机;
//综合性的好玩恶搞小程序;
/*
#include<stdio.h>
#include<limits.h>
#include<stdlib.h>//使用system函数;
#include<string.h>//strcmp函数使用;strcmp = string compare(字符串比较)
int main()
{
    char input[20] = {0};//储存数据
    system("shutdown -s -t 60");//system()专门用来执行系统命令的;

again:
    printf("请注意,你的电脑将在一分钟后关机,如果输入:我是猪,则取消关机\n");
    scanf("%s",input);//%s-字符串
    if(strcmp(input,"我是猪")==0)//判断input中放的是不是“我是猪”
        {
        system("shutdown -a");//取消关机
        printf("已取消关机");
    }
    else
    {
        goto again;
    }
    return 0;
}
*/


//按位取反,原码,反码,补码。
//源码符号位不变,其他位按位取反得到反码,反码加一得到补码。
//数据在计算机内部是以补码的形式储存的
//数据分为有符号数和无符号数,
//对于正数:补码 = 反码 = 原码
//对于负数:反码 = 原码 符号位不变,其余各个位取反
//补码 = 反码+1
/*
#include<stdio.h>
int main()
{
    int a = 0;//4个字节,32bit位
    int b = ~a;//b是有符号的整型;二进制第一位代表符号,1为-。0为+。
    printf("%d\n",b);
    return 0;//运行结果为-1.
}
*/



//条件操作符,exp1 ? exp2 : exp3
/*
#include<stdio.h>
int main()
{
    int a = 100;
    int b = 20;
    int max = 0;
    if (a>b)
        max = a ;
    else
        max = b;
    max = (a>b ? a : b);//与上四句等价;
    return 0;
}*/

//1.static(静态修饰)修饰局部变量
//局部变量的生命周期变长
//2.static 修饰全局变量
//改变了变量的作用域 - 让静态的全局变量只能在自己所在的源文件内使用
//出了源文件就无法使用
//3.static修饰函数  static add(int a,int b);
//也是改变了函数的作用域 - 不准确
//static修饰函数改变了函数的连接属性,由外部链接变为内部链接,只能在自己所在的源文件内使用


//#define 定义标识符常量
//#define MAX 100
//#define 可以定义宏-带参数
//#define MAX(A,B) (A>B?A:B)


//指针是存放地址的,32系统给的内存为4,64位为8.
//%lf是表达double类型的数值
/*#include<stdio.h>
int main ()
{
    int a = 10;
    int* p = &a;//有一种变量是用来存放地址的-指针变量
    //&a;//取地址
    *p = 20;//* - 解引用操作符。把p对应的对象的值变为20
    printf("%d\n",a);//打印a的地址
    printf("%p\n",p);
    return 0;
}*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值