【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;
}
相关推荐
yuanbenshidiaos19 分钟前
C++----------函数的调用机制
java·c++·算法
唐叔在学习23 分钟前
【唐叔学算法】第21天:超越比较-计数排序、桶排序与基数排序的Java实践及性能剖析
数据结构·算法·排序算法
ALISHENGYA43 分钟前
全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(switch语句)
数据结构·算法
chengooooooo1 小时前
代码随想录训练营第二十七天| 贪心理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和
算法·leetcode·职场和发展
jackiendsc1 小时前
Java的垃圾回收机制介绍、工作原理、算法及分析调优
java·开发语言·算法
FeboReigns1 小时前
C++简明教程(文章要求学过一点C语言)(1)
c语言·开发语言·c++
FeboReigns1 小时前
C++简明教程(文章要求学过一点C语言)(2)
c语言·开发语言·c++
游是水里的游2 小时前
【算法day20】回溯:子集与全排列问题
算法
_小柏_2 小时前
C/C++基础知识复习(43)
c语言·开发语言·c++
yoyobravery2 小时前
c语言大一期末复习
c语言·开发语言·算法