法133计算机科学课第11周实践题目及参考解答

简介: 课程主页在:http://blog.csdn.net/sxhelijian/article/details/13705597Problem  A 求n以内奇数的平方和【简单循环】  Description输入n,求n以内奇数的平方和Input整型数nOutputn以内奇数的平方和(例如,输入7,输出为12+32+52+72=84)Sample Input7Sample 

课程主页在:http://blog.csdn.net/sxhelijian/article/details/13705597


Problem  A n以内奇数的平方和【简单循环】  

Description

输入n,求n以内奇数的平方和

Input

整型数n

Output

n以内奇数的平方和(例如,输入7,输出为12+32+52+72=84)

Sample Input

7

Sample Output

84

参考解答:

#include<stdio.h>
int main()
{
    // 注意sum要赋初值
    int n, sum = 0;
    int i;
    scanf("%d",&n);
    for( i=1; i<=n; i+=2 )
    {
        sum = sum + i*i;
    }
    printf("%d",sum);
    return 0;
}


Problem  B 谁去参加竞赛?【简单循环】

Description

学校要举办大学生程序设计竞赛,老师要求期末考试成绩在平均成绩以上的同学都去参赛。谁去参赛?那得先算出平均成绩。

Input

输入若干个0-100间的数表示成绩,为适应不同人数的班级,人数不确定,输入以一个负数结束。(为简单起见,不必对输入数据是否超出100进行限制)

Output

成绩的平均值(输出保留1位小数)

Sample Input

98.5 72.3 67.3 87 54.3 63 78.5 -1

Sample Output

74.4

HINT

C语言中,将printf("%.1f\n",x); 可以令x的值保留1位小数输出。

C++中,cout<<setiosflags(ios::fixed)<<setprecision(1)<<x<<endl;x的值保留1位小数输出,另外,需加头文件#include<iomanip>

参考解答:

#include<stdio.h>
int main()
{
    float score, sum = 0, n=0;
    scanf("%f",&score);
    while(score>=0)
    {
        sum += score;
        n++;
        scanf("%f",&score);
    }
    if(n>0)
        printf("%.1f",sum/n);
    else
        printf("%.1f",0.0);
    return 0;
}


Problem  C 某年某月的天数【多分支】

Description

输入年和月,判断该月有几天?

Input

输入年和月,格式为:年 月

Output

输出该月的天数。

Sample Input

2009 1

Sample Output

31

HINT

注意判断闰年啊

参考解答1:

#include<stdio.h>
int main()
{
    int year, month, days;
    scanf("%d %d", &year, &month);
    switch (month)
    {
    case 1 :
    case 3 :
    case 5 :
    case 7 :
    case 8 :
    case 10 :
    case 12 :
        days = 31;
        break;
    case 4 :
    case 6 :
    case 9 :
    case 11 :
        days = 30;
        break;
    default:  // month == 2
        if( (year%4==0&&year%100!=0)|| (year%400==0) )
            days = 29;
        else
            days = 28;
    }
    printf("%d",days);
    return 0;
}


参考解答2:

#include <stdio.h>
int main()
{
	int year,month,d;
	char c;
	scanf("%d%c%d",&year,&c,&month);
	switch(month)
	{
	  case 12:d=31;break;
	  case 11:d=30;break;
	  case 10:d=31;break;
	  case  9:d=30;break;
	  case  8:d=31;break;
	  case  7:d=31;break;
	  case  6:d=30;break;
	  case  5:d=31;break;
	  case  4:d=30;break;
	  case  3:d=31;break;
	  case  2:d=28;break;
	  case  1:d=31;break;
	}
	if(year%400==0||year%100!=0&&year%4==0&&month==2)
	   d++;
	printf("%d\n",d);
	return 0;
}



Problem  D 帮警长数一数【循环、分支简单综合】

Description

黑猫警长在犯罪现场发现了一些血迹,现已经委托检验机构确定了血型,需要统计各种血型的样本数目。 

Input

血型序列(A/B/O/CC代表AB型血,输入以X结束) 

Output

各种血型的数量 

Sample Input

ABCAOCOAOOBX

Sample Output

A:3

B:2

O:4

AB:2

参考解答:

#include<stdio.h>
int main()
{
    int a=0, b=0, ab=0, o=0;
    char blood;
    scanf("%c", &blood);
    while(blood!='X')
    {
        switch (blood)
        {
        case 'A' :
            a++;
            break;
        case 'B' :
            b++;
            break;
        case 'C' :
            ab++;
            break;
        case 'O' :
            o++;
            break;
        }
        scanf("%c", &blood);
    }
    printf("A:%d\n",a);
    printf("B:%d\n",b);
    printf("O:%d\n",o);
    printf("AB:%d\n",ab);
    return 0;
}


目录
相关文章
|
8天前
|
人工智能 运维 安全
|
6天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
658 23
|
7天前
|
人工智能 测试技术 API
智能体(AI Agent)搭建全攻略:从概念到实践的终极指南
在人工智能浪潮中,智能体(AI Agent)正成为变革性技术。它们具备自主决策、环境感知、任务执行等能力,广泛应用于日常任务与商业流程。本文详解智能体概念、架构及七步搭建指南,助你打造专属智能体,迎接智能自动化新时代。
|
13天前
|
人工智能 JavaScript 测试技术
Qwen3-Coder入门教程|10分钟搞定安装配置
Qwen3-Coder 挑战赛简介:无论你是编程小白还是办公达人,都能通过本教程快速上手 Qwen-Code CLI,利用 AI 轻松实现代码编写、文档处理等任务。内容涵盖 API 配置、CLI 安装及多种实用案例,助你提升效率,体验智能编码的乐趣。
1064 110
人工智能 数据可视化 数据挖掘
239 0