【C语言】基础篇续

最大公约数HCF与最小公倍数LCM

cpp 复制代码
#include<stdio.h>
int main(){
	int n1,n2,i,hcf,lcm;
	printf("Enter two numbers:");
	scanf("%d %d",&n1,&n2);
	for(i = 1;i <= n1 & i <= n2;i++){
		if(n1 % i == 0 & n2 % i == 0){
			hcf = i;
			lcm = (n1*n2)/hcf;
		}
	}
	printf("HCF of %d and %d is %d\n",n1,n2,hcf);
	printf("LCM of %d and %d is %d",n1,n2,lcm);
}

简单实现开根号 sqrt

cpp 复制代码
#include<stdio.h>
#include<math.h>
int main(){
	int a = 9;
	int b;
	b = sqrt(a);
	printf("%d",b);
	return 0;
}

计算ax²+bx+c=0的根

cpp 复制代码
#include<stdio.h>
#include<math.h>
int main(){
	double a,b,c,disc,x1,x2,p,q;
	printf("Enter ax²+bx+c of a b c:");
	scanf("%lf %lf %lf",&a,&b,&c);
	disc = b*b - 4*a*c;
	if(disc<0){
		printf("This equation hasn't real root\n");
	}
	else{
		p = -b/(2.0*a);
		q = sqrt(disc)/(2.0*a);
		x1 = p + q;
		x2 = p - q;
		printf("x1 = %5.2f\nx2 = %5.2f\n",x1,x2);
	}
	return 0;
}

通过分数评判等级

cpp 复制代码
#include<stdio.h>
int main(){
	int s,score;
	scanf("%d",&score);
	printf("Your grade is:");
	s = score/10;
	switch(s){
		case 1: printf("D");
		break;
		case 2: printf("D");
		break;
		case 3: printf("D");
		break;
		case 4: printf("D");
		break;
		case 5: printf("D");
		break;
		case 6: printf("C");
		break;
		case 7: printf("C");
		break;
		case 8: printf("B");
		break;
		case 9: printf("A");
		break;
		case 10: printf("A");
		break;
		default:printf("Error");
	}
	return 0;
}

循环嵌套输出矩阵

cpp 复制代码
#include<stdio.h>
int main(){
	int i,j,n=0;
	for(i = 1;i <= 4;i++)
		for(j = 1;j <= 5;j++,n++){
			if(n%5 == 0)printf("\n");
			printf("%d\t",i*j);
		}
		printf("\n");
	return 0;
}

求100-200的全部素数

cpp 复制代码
#include<stdio.h>
#include<math.h>
int main(){
	int n,k,i,m=0;
	for(n = 101;n <= 200;n = n+2){  // 偶数不用排查
		k = sqrt(n);
		for(i = 2;i <= k;i++){
			if(n % i == 0)
			break;
		}
		if(i >= k + 1){       // 表示n未被整除
			printf("%d ",n);
			m = m + 1;
		}
		if(m % 10 == 0)      // 一行内输出10个素数
			printf("\n");
	}
	printf("\n");
	return 0;
}

大写字母转小写

cpp 复制代码
#include<stdio.h>
int main(){
	char c1,c2;
	printf("Enter a capital letter :");
	c1 = getchar();
	c2 = c1 + 32;
	printf("It's small lettter is :");
	putchar(c2);
	return 0;
}

计算字符串长度

调用内置函数strlen

cpp 复制代码
#include<stdio.h>
#include<string.h>
int main(){
	char str[50];
	int len;
	printf("Enter a string:");
	scanf("%s",str);
	len = strlen(str);
	printf("Lengh of '%s' = %d",str,len);
	return 0;
}

使用指针

cpp 复制代码
#include<stdio.h>
int str_len(char* str){
	int count = 0;
	while(*str != '\0'){
		count++;
		str++;
	}
	return count;
}

int main(){
	char str[50];
	printf("Enter a string:");
	scanf("%s",str);
	int len = str_len(str);
	printf("%d",len);
	return 0;
}
相关推荐
阿捏利1 小时前
C Primer Plus 第6版 编程练习——第7章(上)
c语言·编程题·c primer plus
jz_ddk2 小时前
[实战]调频(FM)和调幅(AM)信号生成(完整C语言实现)
c语言·算法·信号处理
CloudAce云一2 小时前
谷歌云代理商:谷歌云TPU/GPU如何加速您的AI模型训练和推理
算法
轻语呢喃3 小时前
每日LeetCode : 杨辉三角
javascript·后端·算法
码农Cloudy.3 小时前
C语言<数据结构-链表>
c语言·数据结构·链表
YuTaoShao3 小时前
【LeetCode 热题 100】148. 排序链表——(解法二)分治
java·算法·leetcode·链表
Shilong Wang3 小时前
三维旋转沿轴分解
算法·计算机视觉·机器人
星竹晨L3 小时前
C语言——预处理详解
c语言·开发语言
ygming4 小时前
Q43- code973- 最接近原点的 K 个点 + Q44- code347- 前 K 个高频元素
前端·算法
lightqjx4 小时前
【数据结构】顺序表(sequential list)
c语言·开发语言·数据结构·算法