#include<stdio.h>
int main (){
int N, i, j, M, count;
unsigned int arr[1000], times[10] = {0}, maxvalue[10];
scanf("%d",&N);
for(i=0;i<N;i++){
scanf("%d",&arr[i]);
}
// times[10] = {0};
for(i=0;i<N;i++){
while(arr[i] % 10 != 0){
times[arr[i] %10] ++;
i /= 10;
count ++;
}
}
M = 0;
for(i=1;i<count;i++){
if(times[0] < times[i]){
M = times[i];
}
}
printf("%d: ",M);
count = 0;
for(i=0;i<count;i++){
if(times[i] == M){
maxvalue[count] = i;
count ++;
}
}
for(i=0;i<count - 1;i++){
printf("%d ",maxvalue[i]);
}
printf("%d",maxvalue[count]);
return 0;
}
#include<stdio.h>
int main (){
int N, i, j, M, count;
unsigned int arr[1000], times[10] = {0}, maxvalue[10];
scanf("%d",&N);
for(i=0;i<N;i++){
scanf("%u",&arr[i]); // 使用 %u 读取 unsigned int
}
for(i=0;i<N;i++){
unsigned int num = arr[i];
while(num > 0){
times[num % 10]++; // 正确计算每个数字出现的次数
num /= 10;
}
}
M = 0;
for(i=0;i<10;i++){ // 检查times数组中的所有元素
if(times[i] > M){
M = times[i]; // 找到最大的出现次数
}
}
printf("%d: ",M);
count = 0;
for(i=0;i<10;i++){ // 检查times数组中的所有元素
if(times[i] == M){
maxvalue[count] = i; // 存储出现次数最多的数字
count++;
}
}
for(i=0;i<count - 1;i++){
printf("%d ",maxvalue[i]); // 打印出现次数最多的数字
}
if(count > 0) { // 确保至少有一个数字被打印
printf("%d\n",maxvalue[count - 1]); // 打印最后一个数字,并换行
}
return 0;
}
#include<stdio.h>
int main (){
int N, M, i, arr[100], res[100];
scanf("%d%d",&N,&M);
for(i=0;i<N;i++){
scanf("%d",&arr[i]);
}
for(i=0;i<N;i++){
// res[i] = arr[(i + (N - M)) % N];
res[i] = arr[(i + (N - M + N)) % N];//第一次没有考虑到N < M 的情况,这样就是负数,数组越界,完全有可能哦
}
for(i=0;i<N - 1;i++){
printf("%d ",res[i]);
}
printf("%d",res[N - 1]);
return 0;
}
标签:11,count,arr,15,10,int,scanf,times
From: https://www.cnblogs.com/GJ504b/p/18547791