40分想问一下哪里需改进,谢谢了
查看原帖
40分想问一下哪里需改进,谢谢了
626660
TX23xz楼主2021/12/11 14:10
#include<stdio.h>
#include<math.h>
#define N 100
int prime(int n);

int prime(int n){
	if(n == 0){
		return 0;
	}
	int k = sqrt(n);
	int i;
	for(i = 2; i <= k; i++){
		if(n % i == 0){
			return 0;
		}
	}
	return 1;
}
int main(){
	char s[N];
	gets(s);
	int a[N];
	int i, j;
	for(i = 0; i < N; i++){
		a[i] = 0;
	}
	int maxn, minn;
	i = 0;
	while(s[i]){
		a[s[i] - 'a']++; 
		i++;
	}
	maxn = a[0], minn = 1;
	for(i = 0; i < 26; i++){
		if(a[i] > maxn){
			maxn = a[i];
		}
		if(a[i] < minn && a[i] != 0){
			minn = a[i];
		}
	}
	int m = maxn - minn;
	if(prime(m)){
		printf("Lucky Word\n%d", m);
	}
	else{
		printf("No Answer\n0");
	}
	
}

40分想问一下代码哪里不正确

2021/12/11 14:10
加载中...