天文学上的润年
原理:年数能整除于4且不能整除100或者可以整除400,下面用标准C语言的两种实现方式
1平润年的判断
#include<stdio.h>
int main(void){
inti;
printf("请输入一个数:\n");
scanf("%d",&i);
if(i%4==0&&i%100!=0||i%400==0){
printf("您输入的是润年");
}else{
printf("您输入的不是润年");
}
return0;
}
2平润年的判断
#include<stdio.h>
int main(void){
inti;
printf("请输入一个数:\n");
scanf("%d",&i);
if(!(i%4)&&i%100||!(i%400)){
printf("您输入的是润年");
}else{
printf("您输入的不是润年");
}
return0;
}
3素数的判断
原理:利用判断能不能整除2到之间的所有数字来判断的
#include<stdio.h>
#include<math.h>
int main(void){
intm,s,i;
printf("请输入一个数:\n");
scanf("%d",&m);
s=sqrt(m);
for(i=2;i<=s;i++){
if(m%i==0)
break;
}
if(i>s){
printf("您的输入为素数");
}else{
printf("您输入的不是素数");
}
return0;
}
4求任意一个数字的千位数
原理:这里n取4
#include<stdio.h>
int main(void){
intm,k;
printf("请输入一个整数:\n");
scanf("%d",&m);
k=m/1000%10;
printf("您输入的数字的千位数是:%d",k);
return0;
}
5将一个由数字构造的字符串转换成数值变量
原理:小于10的数字构造的字符串其ASCALL码对应减去48即可得到能够运算的数值性变量
#include<stdio.h>
int main(void){
charstr[10];
intl=0,m=0;
printf("请输入一个整数(不要超过9位):");
gets(str);
while(str[l]!='\0'){
printf("%d\n",str[l]);
m=m*10+str[l]-48;
l++;
}
printf("%d",m);
return0;
}
6大小写字母的转换
原理:字符运算,ASCALL码的加减32
#include<stdio.h>
int main(void){
charl,m;
printf("请输入一个大写字母:\n");
scanf("%c",&m);
l=m+32;
printf("%c",l);
return0;
}
7对浮点型数据的四舍五入的实现
原理:利用取整计算int实现
#include<stdio.h>
int main(void){
floatl,m;
printf("请输入一个浮点型数据:\n");
scanf("%f",&m);
m=int(m*100+0.5);
l=m/100;
printf("%f",l);
return0;
}
8冒泡排序算法
原理:将相邻像个数相比较,小的放在前面,大的放在后面,用C语言实现时,我们首先产生一个随机数组,然后进行冒泡排序,最后将排序后的数组中元素一一打印出来,这里给出被调用函数。
void sort(int n)
{
inti,j,t;
inta[n];
for(i=0;i<n;i++){
a[i]=rand()%n;
}
for(i=1;i<n+1;i++){
for(j=0;j<n-i;j++){
if(a[j]>a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for(i=0;i<n;i++){
printf("%d\t",a[i]);
}
return;
}