tmptest

一些C题目

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

//判断给定的月份N是否为大月
bool printfBigMonth(int N){
	// int i=0;
	// for(i=1;i<=12;i++){
	// 	if((i<8)&&(i%2==1)){printf("%d\n",i );}
	// 	if((i>7)&&(i%2==0)){printf("%d\n",i );}
	// }
	if(N>12){
		printf("%d not a month!\n",N );
		return false;
	}
	if((N<8)&&(N%2==1)||(N>7)&&(N%2==0)){
		printf("%d is big month!\n",N );
		return true;
	}else{
		printf("%d is not big month!\n",N );
		return false;
	}
}
//求整数N的十进制表示0的个数
int countZero(int N){
	int count=0;
	char str[32]={0};

	sprintf(str,"%d",N);
	char *p=str;
	while(*p){
			printf("s===%c\n",*p );
		if(*p=='0')count++;
		*p++;
	}
	return count;
}
//atoi字符串转整数
int myatoi(){
 return 0;
}
//求一个字符串中出现频率最高的字符以及出现次数
int countMostNum(char *str){
	if(str==NULL){
		return -1;
	}
	int temp[128]={0};
	int i=0,max=0;
	while(*str){
		temp[*str]++;
		*str++;
	}
	for(i=0;i<128;i++){
		if(temp[i]>max){
			max=temp[i];
			printf("%c=%d\n",i,temp[i] );
		}
	}
	return max;
}

//输入n,n>2 输出n以内的所有质数

bool isPrime(int n){
	int i=0;
	if(n<3){
		return true;
	}
	for(i=2;i<n;i++){
		if((n%i)==0){
			return false;
		}
	}
	return true;
}

int numDealProc(int n){
	int i;
	for(i=0;i<n;i++){
		if(isPrime(i))printf("prime is %d\n",i );
	}
	return 0;
}

//生成K个不重复且大于N小于M的随机数 k<m-n

int getRandomProc(int K,int M,int N){
	int i=0;
	int tempk=0;
	while(tempk<(m-n)){
		
		if(tempk==K){
			break;
		}
		tempk++;
	}
	return 0;
}

//调整数组顺序使奇数位于偶数前面
void sort(int a[],int n){
	int i=0,j=0,tmp=0;
	for(i=0;i<n;i++){
		for ( j = i; j < n-1; j++){
			if((a[i]%2==0)&&(a[j]%2!=0)){
				printf("%d<=>%d\n",a[i],a[j] );
				tmp=a[j];
				a[j]=a[i];
				a[i]=tmp;
			}
		}
	}
	for ( i = 0; i < n; ++i)
	{
		printf("a[%d]=%d\n",i,a[i] );
	}
}

int main()
{
	/* code */
	// printfBigMonth(2);
	// printf("%d\n",countZero(6205480) );
	// char p[]={"stecjekrnkvsdoqwehjhsd"};
	// printf("%d\n",countMostNum(p) );
	// numDealProc(100);
	// int a[]={13,15,17,19,76,91,86,44,34,77,21,23,25,27,29,31,33,236};
	// int len=sizeof(a)/sizeof(int);
	// sort(a,len);

	return 0;
}








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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值