c语言整理资料

常用的函数

1、putchar()函数
2、getchar()函数
3、pow( a , b )函数
4、sqrt( a )函数
5、fabs(a)函数
6、puts(字符数组)函数——输出字符串的函数
7、gets(字符数组)——输入字符串的函数 (少用,可能会有溢出的情况)
8、strcat(a , b)函数——字符串连接函数
9、strcpy函数——字符串复制函数
10、strncpy函数——字符串复制函数
11、strcmp函数——字符串比较函数
12、strlen函数——测量字符串长度的函数
13、strlwr函数——转换为小写的函数
14、strupr函数——转换为大写的函数
原文链接:https://blog.csdn.net/qq_45696288/article/details/122249139

在这里插入图片描述
原文链接:https://blog.csdn.net/passxgx/article/details/123571238

常考的程序编写题

1、将输入的数组逆置

int main() {    
	char s[]={};
    char ct;
    for(int i=0;i<20;i++){
        s[i]=getchar();
        printf("%c",s[i]);
        if(s[i]=='0'){
            printf("\n");
            break;
        }
    }
    int len = strlen(s);
    printf("%d",len);
    for(int i=0;i<len/2;i++){
        ct=s[i];s[i]=s[len-i-1];s[len-i-1]=ct;
    }
    printf("%s",s);
}

递归方法计算x的n次幂

float power(float x,int n){
    if(n==0)return 1;
    float sum = x*power(x,--n);
    return sum;
}
int main() {    
	float a =2;int b=3;
    printf("%1.2f",power(a,b));
}

1234能组成多少个互不相同且不重复的三位数

int main(){
    int a,b,c,n=0;
    int arr[]={1,2,3,4};
    for(int i=0;i<4;i++){
        a= arr[i]*100;
        for(int j=0;j<4;j++){
            if(j==i)continue;
            b=arr[j]*10;
            for(int k=0;k<4;k++){
                if(k==i||k==j)continue;
                c=arr[k];
                n++;
                printf("%d\n",a+b+c);
                
            }
        }
    } printf("数量为:%d个\n",n);
}

//一个整数,加上100后是完全平方数,再加168也是

int main(){
    int x,y,m,n;
    for(int i=0;i<200;i++){
        x=sqrt(m=i+100);
        y=sqrt(n=i+100+168);
        if(x*x==(m)&&y*y==(n)){
            printf("i:%d\n",i);
        }
    }
}

//判断输入的三个数能否构成三角形,构成什么三角形
int main() {
    int a,b,c;
    cin>>a>>b>>c;
    if(a+b>c&&b+c>a&&a+c>b){
        if(a==b==c) cout<<"等边三角形"<<endl;
        else if(a==b||a==c||b==c) cout<<"等腰三角形"<<endl;
        else cout<<"一般三角形"<<endl;
    }
    else cout<<"不是三角形"<<endl;
}

//用switch判断成绩
int main() {
    int grade;
    cin>>grade;
    switch (grade=grade/10) {
    case(10):cout<<'A'<<endl;break;
    case(9):cout<<'B'<<endl;break;
    case(8):cout<<'C'<<endl;break;
    case(7):cout<<'D'<<endl;break;
    default:cout<<"ERROR"<<endl;break;
    }
}

Tips

static静态

静态区的生命周期和程序的生命周期是一样的,出了作用范围不会被销毁(上面static int a =5)这个例子,相当于作用范围不变,但生命周期延长了。
static修饰局部变量时,实际改变的是变量的存储位置,原来在栈区,被修饰后放在了静态区
一个全局变量本来是具有外部属性的,但是被static修饰后,外部属性就变成了内部连接属性,只能在自己所在的源文件内使用,不能在其他文件内使用。

这样呢,被static修饰后的全局变量给我们的感觉是作用域变小了(只能在自己文件内部使用,不能在别的文件内使用),但实质是链接属性变了。
来自原文链接:https://blog.csdn.net/weixin_47257473/article/details/122633926

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值