求助 几道C++、C语言题目
定义学生类(Student),实现相应功能 【C++:类与对象】题目描述
定义一个学生类(Student),要求如下:
(1)数据成员:圴为private权限
name(姓名),字符串(长度不超过20个字符)
age(年龄),整型
num(学号),字符串(长度不超过20个字符)
sc1(第一学年平均成绩)、sc2(第二学年平均成绩)、sc3(第三学年平均成绩)、sc4(第四学年平均成绩),圴为0-100的整数
(2)成员函数:均为public权限
各数据成员对应的set、get函数。
在main()函数中定义一个学生对象st,然后得到输入的数据,再调用各数据成员对应的set()方法来设置对象的数据成员值,最后调用相关的get()计算、输出结果。
输入
姓名,年龄,学号,第一学年平均成绩,第二学年平均成绩,第三学年平均成绩,第四学年平均成绩。
各部分内容之间均用单个英文空格隔开,无多余空格。
输出
一行,按顺序输出:姓名,年龄,学号,四年平均成绩(向下取整)。
各部分内容之间均用单个英文逗号","隔开,无多余空格。
样例输入
Tom 18 1440701201 80 80 90 70
样例输出
Tom,18,1440701201,80
简单阶乘计算【C语言编程基础】
题目描述
本题要求实现一个计算非负整数阶乘的简单函数。
函数接口定义:
int Factorial( const int N );
其中N是用户传入的参数,其值不超过12。如果N是非负整数,则该函数必须返回N的阶乘,否则返回0。
裁判测试程序样例:
#include <stdio.h>
int Factorial( const int N );
int main()
{
int N, NF;
scanf("%d", &N);
NF = Factorial(N);
if (NF) printf("%d! = %d\n", N, NF);
else printf("Invalid input\n");
return 0;
}
/* 你的代码将被嵌在这里 */
输入
整数N
输出
N的阶乘
样例输入
5
样例输出
5! = 120
支票面额【C语言编程基础】
题目描述
一个采购员去银行兑换一张y元f分的支票,结果出纳员错给了f元y分。采购员用去了n分之后才发觉有错,于是清点了余额尚有2y元2f分,问该支票面额是多少?
输入
输入在一行中给出小于100的正整数n。
输出
在一行中按格式y.f输出该支票的原始面额。如果无解,则输出No Solution。
样例输入
输入样例1:
23
样例输出
25.51
打印九九口诀表【C语言编程基础】
题目描述
下面是一个完整的下三角九九口诀表:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
本题要求对任意给定的一位正整数N,输出从1*1到N*N的部分口诀表。
输入
输入在一行中给出一个正整数N(1≤N≤9)。
输出
输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。
样例输入
4
样例输出
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
单词长度【C语言编程基础】
题目描述
你的程序要读入一行文本,其中以空格分隔为若干个单词,以.结束。你要输出每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如it's算一个单词,长度为4。注意,行中可能出现连续的空格;最后的.不计算在内。
输入
输入在一行中给出一行文本,以.结束
提示:用scanf("%c",...);来读入一个字符,直到读到.为止。
输出
在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。
样例输入
It's great to see you here.
样例输出
输出样例:
4 5 2 3 3 4
猴子选大王【C语言编程基础】
题目描述
一群猴子要选新猴王。新猴王的选择方法是:让N只候选猴子围成一圈,从某位置起顺序编号为1~N号。从第1号开始报数,每轮从1报到3,凡报到3的猴子即退出圈子,接着又从紧邻的下一只猴子开始同样的报数。如此不断循环,最后剩下的一只猴子就选为猴王。请问是原来第几号猴子当选猴王?
输入
输入在一行中给一个正整数N(≤1000)。
输出
在一行中输出当选猴王的编号。
样例输入
11
样例输出
7
删除字符串中的子串【C语言编程基础】
题目描述
输入2个字符串S1和S2,要求删除字符串S1中出现的所有子串S2,即结果字符串中不能包含S2。
输入
输入在2行中分别给出不超过80个字符长度的、以回车结束的2个非空字符串,对应S1和S2。
输出
在一行中输出删除字符串S1中出现的所有子串S2后的结果字符串。
样例输入
Tomcat is a male ccatat
cat
样例输出
Tom is a male
字符串的冒泡排序【C语言编程基础】
题目描述
我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K(<N),输出扫描完第K遍后的中间结果序列。
输入
输出冒泡排序法扫描完第KKK遍后的中间结果序列,每行包含一个字符串。
输出
输出冒泡排序法扫描完第K遍后的中间结果序列,每行包含一个字符串。
样例输入
6 2
best
cat
east
a
free
day
样例输出
best
a
cat
day
east
free
字符串循环左移【C语言编程基础】
题目描述
输入一个字符串和一个非负整数N,要求将字符串循环左移N次。
输入
输入在第1行中给出一个不超过100个字符长度的、以回车结束的非空字符串;第2行给出非负整数N。
输出
在一行中输出循环左移N次后的字符串。
样例输入
Hello World!
2
样例输出
llo World!He
说反话-加强版【C语言编程基础】
题目描述
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入
测试输入包含一个测试用例,在一行内给出总长度不超过500 000的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用若干个空格分开。
输出
每个测试用例的输出占一行,输出倒序后的句子,并且保证单词间只有1个空格。
样例输入
Hello World Here I Come
样例输出
Come I Here World Hello
有理数加法【C语言编程基础】
题目描述
本题要求编写程序,计算两个有理数的和。
输入
输入在一行中按照a1/b1 a2/b2的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。
输出
在一行中按照a/b的格式输出两个有理数的和。注意必须是该有理数的最简分数形式,若分母为1,则只输出分子
样例输入
1/3 1/6
样例输出
1/2
通讯录的录入与显示【C语言编程基础】
题目描述
通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。
本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录。
输入
输入在第一行给出正整数N(≤10);随后N行,每行按照格式姓名 生日 性别 固话 手机给出一条记录。其中姓名是不超过10个字符、不包含空格的非空字符串;生日按yyyy/mm/dd的格式给出年月日;性别用M表示“男”、F表示“女”;固话和手机均为不超过15位的连续数字,前面有可能出现+。
在通讯录记录输入完成后,最后一行给出正整数K,并且随后给出K个整数,表示要查询的记录编号(从0到N−1顺序编号)。数字间以空格分隔。
输出
对每一条要查询的记录编号,在一行中按照姓名 固话 手机 性别 生日的格式输出该记录。若要查询的记录不存在,则输出Not Found。
样例输入
3
Chris 1984/03/10 F +86181779452 13707010007
LaoLao 1967/11/30 F 057187951100 +8618618623333
QiaoLin 1980/01/01 M 84172333 10086
2 1 7
样例输出
LaoLao 057187951100 +8618618623333 F 1967/11/30
Not Found
有理数均值【C语言编程基础】
题目描述
本题要求编写程序,计算N个有理数的平均值。
输入
输入第一行给出正整数N(≤100);第二行中按照a1/b1 a2/b2 …的格式给出N个分数形式的有理数,其中分子和分母全是整形范围内的整数;如果是负数,则负号一定出现在最前面。
输出
在一行中按照a/b的格式输出N个有理数的平均值。注意必须是该有理数的最简分数形式,若分母为1,则只输出分子。
样例输入
4
1/2 1/6 3/6 -5/10
样例输出
1/6
复数四则运算【C语言编程基础】
题目描述
本题要求编写程序,计算2个复数的和、差、积、商。
输入
输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部。题目保证C2不为0。
输出
分别在4行中按照(a1+b1i) 运算符 (a2+b2i) = 结果的格式顺序输出2个复数的和、差、积、商,数字精确到小数点后1位。如果结果的实部或者虚部为0,则不输出。如果结果为0,则输出0.0。
样例输入
2 3.08 -2.04 5.06
样例输出
(2.0+3.1i) + (-2.0+5.1i) = 8.1i
(2.0+3.1i) - (-2.0+5.1i) = 4.0-2.0i
(2.0+3.1i) * (-2.0+5.1i) = -19.7+3.8i
(2.0+3.1i) / (-2.0+5.1i) = 0.4-0.6i
整数分解为若干项之和【C语言编程基础】
题目描述
将一个正整数N分解成几个正整数相加,可以有多种分解方法,例如7=6+1,7=5+2,7=5+1+1,…。编程求出正整数N的所有整数分解式子。
输入
每个输入包含一个测试用例,即正整数N (0<N≤30)。
输出
按递增顺序输出N的所有整数分解式子。递增顺序是指:对于两个分解序列N1={n1,n2,⋯}和N2={m1,m2,⋯},若存在i使得n1=m1,⋯,ni=mi,但是ni+1<mi+1,则N1序列必定在N2序列之前输出。每个式子由小到大相加,式子间用分号隔开,且每输出4个式子后换行。
样例输入
7
样例输出
7=1+1+1+1+1+1+1;7=1+1+1+1+1+2;7=1+1+1+1+3;7=1+1+1+2+2
7=1+1+1+4;7=1+1+2+3;7=1+1+5;7=1+2+2+2
7=1+2+4;7=1+3+3;7=1+6;7=2+2+3
7=2+5;7=3+4;7=7
数列求和-加强版【C语言编程基础】
题目描述
给定某数字A(1≤A≤9)以及非负整数N(0≤N≤1000000),求数列之和S=A+AA+AAA+⋯+AA⋯(N个A)。例如A=1, N=3时,S=1+11+111=123。
输入
输入数字A与非负整数N。
输出
输出其N项数列之和S的值。
样例输入
1 3
样例输出
123