2021 发工资咯:)
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int n,sum,i;
int salary[100];
while(scanf("%d",&n)!=EOF)
{
if(n==0)
break;
sum = 0;
for(i=0; i<n; i++)//输入数据
{
scanf("%d",&salary[i]);
while(salary[i]>0)//处理数据
{
if(salary[i]/100>0)
{
sum += salary[i]/100;
salary[i] = salary[i]%100;
}
else if(salary[i]/50>0)
{
sum += salary[i]/50;
salary[i] = salary[i]%50;
}
else if(salary[i]/10>0)
{
sum += salary[i]/10;
salary[i] = salary[i]%10;
}
else if(salary[i]/5>0)
{
sum += salary[i]/5;
salary[i] = salary[i]%5;
}
else if(salary[i]/2>0)
{
sum += salary[i]/2;
salary[i] = salary[i]%2;
}
else
{
sum += salary[i];
salary[i] = 0;
}
}
}
printf("%d\n",sum);
}
return 0;
}
------------------------------------------------------------------------------------------
2022 海选女主角
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{
//接收数据
int m,n,x,y,i,j;
double num,fabs_max;//**
while(scanf("%d%d",&m,&n)!=EOF)
{
x = y = 1;
fabs_max = 0;
for(i=1; i<=m; i++)
{
for(j=1; j<=n; j++)
{
scanf("%lf",&num);//**
if(fabs(num)>fabs(fabs_max))
{
fabs_max = num;
x = i;
y = j;
}
}
}
//打印结果
printf("%d %d %.0lf\n",x,y,fabs_max);//**
//printf("%d",abs(-2147483648));// 结果为0
}
return 0;
}
------------------------------------------------------------------------------------------
2023 求平均成绩
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int n,m,i,j,count,flag;
double score[50][5];
double course[5];
double sum_person,sum_course,avg_person,avg_course;
while(scanf("%d%d",&n,&m)!=EOF)
{
for(i=0; i<n; i++)//输入数据
{
for(j=0; j<m; j++)
{
scanf("%lf",&score[i][j]);
}
}
//输出每个人课程的平均成绩==每个人的总成绩/课程总数
for(i=0; i<n; i++)
{
sum_person = 0;
for(j=0; j<m; j++)//每行相加
{
sum_person += score[i][j];//每个人的总成绩
}
avg_person = sum_person/m;
printf("%.2f",avg_person);
if(i<n-1)
printf(" ");
}
printf("\n");
//输出每门课程的平均成绩==该门课程所有人的分数之和/总人数
for(j=0; j<m; j++)
{
sum_course = 0;
for(i=0; i<n; i++)//每列相加
{
sum_course += score[i][j];//每个人的总成绩
}
avg_course = sum_course/n;
course[j] = avg_course;//存放课程的平均成绩
//if(score)
printf("%.2f",avg_course);
if(j<m-1)
printf(" ");
}
printf("\n");
//计算该班级中各科成绩均大于等于平均成绩的学生数量
count = 0;
for(i=0; i<n; i++)
{
flag = 1;
for(j=0; j<m; j++)
{
if(course[j]>score[i][j])
flag =0;
}
if(flag==1)
count++;
}
printf("%d\n",count);
printf("\n");
}
return 0;
}
------------------------------------------------------------------------------------------
2024 C语言合法标识符
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
int main()
{
int n,i,j,flag,len;
char ch[50];
while(scanf("%d",&n)!=EOF)
{
getchar();
for(i=0; i<n; i++)
{
//scanf("%s",ch);
gets(ch);
len = strlen(ch);
flag = 0;
if((ch[0]>='a'&&ch[0]<='z')||ch[0]=='_'||(ch[0]>='A'&&ch[0]<='Z'))
{
for(j=1; j<len; j++)
{
if((ch[j]>='a'&&ch[j]<='z')||
ch[j]=='_'||
(ch[j]>='A'&&ch[j]<='Z')||
(ch[j]>='0'&&ch[j]<='9'))
{
flag = 1;
continue;
}
else
{
flag = 0;
break;
}
}
}
if(flag==1)
//printf("yes\n");
puts("yes");
else
printf("no\n");
}
}
return 0;
}
------------------------------------------------------------------------------------------
2025 查找最大元素
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
int main()
{
int i,len;
char c_max;
char ch[256];
while(scanf("%s",&ch)!=EOF)
{
len = strlen(ch);
c_max = ch[0];
//找出最大字母
for(i=0; i<len; i++)
{
if(ch[i]>c_max)
c_max = ch[i];
}
//输出
for(i=0; i<len; i++)
{
putchar(ch[i]);
if(ch[i]==c_max)
printf("(max)");
}
printf("\n");
}
return 0;
}
------------------------------------------------------------------------------------------
2026 首字母变大写
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main()
{
int i;
char ch[100] = " ";
while(gets(ch+1))
{
for(i=1; ch[i]; i++)
{
putchar((isalpha(ch[i])&&ch[i-1]==' ') ? toupper(ch[i]):ch[i]);
}
//printf("\n");
putchar('\n');
}
return 0;
}
------------------------------------------------------------------------------------------
2027 统计元音
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main()
{
int j,n,num1,num2,num3,num4,num5;
char ch[100];
scanf("%d%*c",&n);
while(n--)
{
num1=num2=num3=num4=num5=0;
gets(ch);//获取字符串
for(j=0; j<strlen(ch); j++)//统计元音
{
//大写的元音先转化成小写
if(tolower(ch[j])=='a')
num1++;
else if(tolower(ch[j])=='e')
num2++;
else if(tolower(ch[j])=='i')
num3++;
else if(tolower(ch[j])=='o')
num4++;
else if(tolower(ch[j])=='u')
num5++;
}
printf("a:%d\n",num1);//输出元音个数
printf("e:%d\n",num2);
printf("i:%d\n",num3);
printf("o:%d\n",num4);
printf("u:%d\n",num5);
if(n)
//printf("\n");
putchar('\n');
}
return 0;
}
------------------------------------------------------------------------------------------
2028 Lowest Common Multiple Plus
#define _CRT_SECURE_NO_WARNINGS 1
求最小公倍数
#include <stdio.h>
typedef unsigned long UL;
UL gcd(UL u,UL v)//求最大公约数
{
int remainder;
while(remainder=u%v)
{
u = v;
v = remainder;
}
return v;
}
UL lcm(UL u,UL v)//求最小公倍数
{
return u*v/gcd(u,v);
}
int main()
{
int n,i;
UL num,res;
while(scanf("%d",&n)!=EOF)
{
res = 1;//考虑n=1的情况
for(i=0; i<n; i++)
{
scanf("%lu",&num);
res = lcm(res,num);
}
printf("%lu\n",res);
}
return 0;
}
------------------------------------------------------------------------------------------
2029 Palindromes _easy version
#define _CRT_SECURE_NO_WARNINGS 1
//“回文串”
#include <stdio.h>
#include <string.h>
int main()
{
int n,i,len,flag;
char ch[100];
while(scanf("%d",&n)!=EOF)
{
for(i=0; i<n; i++)
{
char* start;//设置指向左边字符的指针
char* end;//设置指向右边字符的指针
scanf("%s",&ch);
start = ch;
len = strlen(ch);
end = ch+len-1;
flag = 1;//是否是回文串标志
while(start<end)
{
if(*start!=*end)
flag = 0;
start++;
end--;
}
if(flag==1)
printf("yes\n");
else
printf("no\n");
}
}
return 0;
}
------------------------------------------------------------------------------------------
2030 汉字统计
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
//汉字机内码在计算机中,使用2个字节,每个字节二进制最高位为1
//而计算机中二进制为补码形式,最高位为1表示负数
//统计字符串中的小于0的字符个数,再/2即可得到汉字的数量
int n,i,count;
char ch;
while(scanf("%d",&n)!=EOF)
{
getchar();
for(i=0; i<n; i++)
{
count = 0;
while((ch=getchar())!='\n')
{
if(ch<0)
count++;
}
printf("%d\n",count/2);
}
}
return 0;
}