输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。
输入在一行中给出21世纪的某个截止年份。
逐行输出满足条件的所有闰年年份,即每个年份占一行。输入若非21世纪的年份则输出"Invalid year!"。若不存在任何闰年,则输出“None”。
2048
2004
2008
2012
2016
2020
2024
2028
2032
2036
2040
2044
2048
2000
Invalid year!
#include
int main(){
int i,j=0,year;
scanf("%d",&year);
if(year<=2000||year>2100)
printf("Invalid year!");
else{
for(i=2001;i<=year;i++){
if((i%4==0&&i%100!=0)||(i%400==0)){
printf("%d\n",i);
j=1;
}
}
if(j==0)printf("None");
}
return 0;
}
本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:
输入在第一行中给出一个正整数N(≤1000),即学生人数;第二行中给出N个学生的百分制成绩,其间以空格分隔。
在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格。
7
77 54 92 73 60 65 69
1 0 2 3 1
#include
int main()
{
int N, i;
int score;
int countA, countB, countC, countD, countE;
scanf("%d", &N);
countA = countB = countC = countD = countE = 0;
for (i = 1; i <= N; i++)
{
scanf("%d", &score);
if (score < 60)
{
countE++;
}
else if (score >= 60 && score < 70)
{
countD++;
}
else if (score >= 70 && score < 80)
{
countC++;
}
else if (score >= 80 && score < 90)
{
countB++;
}
else
{
countA++;
}
}
printf("%d %d %d %d %d", countA, countB, countC, countD, countE);
return 0;
}
本题要求编写程序,将英文字母替换加密。为了防止信息被别人轻易窃取,需要把电码明文通过加密方式变换成为密文。变换规则是:将明文中的所有英文字母替换为字母表中的后一个字母,同时将小写字母转换为大写字母,大写字母转换为小写字母。例如,字母a->B、b->C、…、z->A、A->b、B->c、…、Z->a。输入一行字符,将其中的英文字母按照以上规则转换后输出,其他字符按原样输出。
输入一行字符,以回车符 '\n'作为 结束符。
将输入的一行字符中的所有英文字母替换为字母表中的后一个字母,同时将小写字母转换为大写字母,大写字母转换为小写字母后输出,其他字符按原样输出。
在这里给出一组输入。例如:
Reold Z123?
在这里给出相应的输出。例如:
sFPME a123?
#include
int main(){
char c,delta;
delta='A'-'a';
do{
scanf("%c",&c);
if(c>='a'&&c<'z')
c+=(delta+1);
else if(c>='A'&&c<'Z')
c-=(delta-1);
else if(c=='Z')
c='a';
else if(c=='z')
c='A';
printf("%c",c);
}while(c!='\n');
return 0;
}
本题要求编写程序,输入一行字符,统计其中数字字符、空格和其他字符的个数。建议使用switch语句编写。
输入在一行中给出若干字符,最后一个回车表示输入结束,不算在内。
在一行内按照
blank = 空格个数, digit = 数字字符个数, other = 其他字符个数
的格式输出。请注意,等号的左右各有一个空格,逗号后有一个空格。
在这里给出一组输入。例如:
Reold 12 or 45T
在这里给出相应的输出。例如:
blank = 3, digit = 4, other = 8
#include
int main()
{
char c;
int letters=0,space=0,digit=0,other=0;
while ((c=getchar())!='\n')
{
if (c >= 'a'&&c <= 'z' || c >= 'A'&&c <= 'Z')
{
other++;
}
else if (c == ' ')
{
space++;
}
else if (c >= '0'&&c <= '9')
{
digit++;
}
else
{
other++;
}
}
printf("blank = %d, digit = %d, other = %d",space,digit,other);
return 0;
}