经典基础编程题练习 下载本文

内容发布更新时间 : 2024/5/3 3:33:24星期一 下面是文章的全部内容请认真阅读。

元素、最大元素的下标、最小元素和最小元素的下标。

(2) 主函数中的输出语句为: printf(\maxPos=%d, min=%d, minPos=%d\\n\时间限内存限 测试输入 期待的输出 制 制 以文本方式显测试用以文本方式显示 示 1. max=90, maxPos=2, min=-9, minPos=3? 例 0 1. ? 编程题12:八进制转换为二进制 成绩: 100 / 折扣: 1

12. 用函数实现将一个八进制数转换为一个二进制数。

说明:( 1 )从键盘输入八进制数,输入格式控制使用 %o ;

无限制 64M ( 2 )输出有效数字位对应的二进制编码,例如如果输入为 045,则输出的结果为100101 (3)每行输出的最后都要求换行,即输出'\\n'字符

测试输入 期待的输出 时间限制无限制 无限制 无限制 内存限制64M 64M 64M 测试用例 0 测试用例 1 测试用例 2 以文本方式显示 以文本方式显示 1. 045? 1. 100101? 以文本方式显示 以文本方式显示 1. 145? 1. 1100101? 以文本方式显示 以文本方式显示 1. 101? 1. 1000001? 编程题13:最大公约数

成绩: 100 / 折扣: 1

13.实现求两个正整数的最大公约数。 说明:( 1 )从键盘输入两个正整数; ( 2 )输出这两个正整数的最大公约数;

测试输入 期待的输出 时间限制无限制 无限制 无限制 内存限制64M 64M 64M 测试用例 0 测试用例 1 测试用例 2 以文本方式显示 1. 345 258? 以文本方式显示 1. 33 33? 以文本方式显示 1. 24 72? 以文本方式显示 1. gcd=3? 以文本方式显示 1. gcd=33? 以文本方式显示 1. gcd=24? 编程题14:三角形面积 成绩: 100 / 折扣: 1

14. 边长为a,b,c的任意三角形的面积可以用海伦公式求解,即: Area=sqrt(s*(s-a)*(s-b)(s-c)) ,

其中 s =(a+b+c)/2 ,即s是周长的一半。写程序,在程序中用带实参的宏名来求面积 。

说明:( 1 )从键盘输入三角形的三条边,scanf中的格式控制串为\

( 2 )对输入的三条边长进行判断,能否构成三角形,不合要求时用printf(\again.\\n\输出提示信息

(3)输出面积时的格式控制串为\保留小数点后三位; 测试输入 期待的输出 时间限制内存限制 无限制 无限制 无限制 无限制 64M 64M 64M 64M 测试用例 以文本方式显示 0 1. 3 4 5? 测试用例 以文本方式显示 1 1. 1 4 5? 测试用例 以文本方式显示 2 1. -1 0 2? 测试用例 以文本方式显示 3 1. 5.5 6.4 9? 以文本方式显示 1. Area=6.000? 以文本方式显示 1. Error!Please input again.? 以文本方式显示 1. Error!Please input again.? 以文本方式显示 1. Area=17.429? 编程题15:带参宏定义 成绩: 100 / 折扣: 1

15. 给年份 year 定义一个宏,以判别该年份是否闰年。提示:宏名可以定义为 LEAP_YEAR ,形参为 y 。 说明:( 1 )从键盘输入四位数的年份;

( 2 )输出该年份是否是闰年;每一种输出提示后都输出\\n以实现换行效果 测试输入 期待的输出 时间限制内存限制 无限制 无限制 无限制 无限制 无限制 64M 64M 64M 64M 64M 测试用例 以文本方式显示 0 1. 2005? 测试用例 以文本方式显示 1 1. 2008? 测试用例 以文本方式显示 2 1. 158? 测试用例 以文本方式显示 3 1. 11159? 测试用例 以文本方式显示 4 1. 1900? 以文本方式显示 1. 2005 is not a leap year!? 以文本方式显示 1. 2008 is a leap year!? 以文本方式显示 1. Input error!? 以文本方式显示 1. Input error!? 以文本方式显示 1. 1900 is not a leap year!? 编程题16:求平均值和最大值 成绩: 100 / 折扣: 1

16 . 某学习小组有 3 个人,每个人的信息包括:学号、姓名和成绩。要求从键盘上输入他们的信息,并求出平均成绩以及最高成绩者的信息。 说明:

1 . 学生结构体类型 typedef struct Student {

int num;

char name[20]; int score; }STU;

2 .平均值保留 2 位小数;

3 .输出最高成绩者信息时各项之间用“ \\t ”隔开。 测试输入 期待的输出 时间内存限制限制 以文本方式显示 1. 1? 2. hangsan? 测3. 86? 试4. 2? 用5. lisi? 例 6. 84? 0 7. 3? 8. wanger? 9. 93? 以文本方式显示 1. The average score=87.67? 2. The student who has the highest score is:? 3. 3 wanger 93? 无限制 64M 编程题17:根据输入日期输出对应季节 成绩: 100 / 折扣: 1

17. 定义一个表示一年四季的枚举类型,然后从键盘上输入一年中的日期(包括年、月、日信息),输出对应的季节。 说明:

1. 季节枚举类型

enum Seasons {Spring,Summer,Autumn,Winter}; 2. 日期结构体 struct Date {

int year,month,day; };

3. 根据月份信息判断相应季节(3~5季为春季,6~8月为夏季,9~11为秋季,12~次年2月为冬季)。 测试输入 期待的输出 时间限制内存限制 无限制 无限制 64M 64M 测试用例 以文本方式显示 0 1. 2009 10 28? 测试用例 以文本方式显示 1 1. 2014 4 3? 以文本方式显示 1. Now it is Autumn? 以文本方式显示 1. Now it is Spring? 编程题18:进制转换 成绩: 100 / 折扣: 1

18.编写程序,以字符形式输入一个四位十六进制数,将其变换为一个十进制整数后输出。 说明:

1. 以字符串方式存储 一个四位十六进制数,其中 的每一个字符都必须是十六进制数中合法的字符,应有相应语句做出判断;

2. 十六进制转换为十进制,要考虑 0-9,A-F,a-f 之间相应的表示和转换; 测试输入 期待的输出 时间限制无限制 无限制 内存限制64M 64M 测试用例 0 测试用例 1 以文本方式显示 以文本方式显示 1. 6D3f? 1. The dec data is:27967? 以文本方式显示 以文本方式显示 1. 45fs? 1. Original data error? 编程题19:字符串逆置

成绩: 100 / 折扣: 1

19. 编程实现字符串的逆置。输出逆置前、后的字符串。 说明:

定义函数 reverse 实现对串的逆置,在该函数中通过指针 p 和 q 指向串是需要交换的两个字符处,然后互换 *p 和 *q 的内容, p 指针的值由小变大,而 q 指针的值由大变小,当 p>=q 时表明交换结束。

测试输入 期待的输出 时间限制无限制 内存限制64M 测试用例 0 以文本方式显示 1. abcdefg? 以文本方式显示 1. gfedcba? 编程题20:字符串转换 成绩: 100 / 折扣: 1

20.输入一个字符串(长度小于 50 ),然后过滤掉所有的非数字字符,得到由数字字符组成的字符串,将其转化为 double 型结果输出。 说明:

(1)输出double型结果的格式控制串为\

(2)如果原串中无数字字符,则用语句printf(\输出对应的提示信息 时间内存限限制制 测试输入 期待的输出 测试用以文本方式显示 1. !1 @2 #3 $4 %5 ^6 &7 *8 (9 )0? 例 0 测以文本方式显示 试1. abcdEFGH? 用以文本方式显示 1. 1234567890.0000? 无64限M 制 以文本方式显示 1. the digital string is empty!? 无64限M 制 例 1 测试用以文本方式显示 1. 987aaa654bbb321ccc? 例 2 以文本方式显示 1. 987654321.0000? 无64限M 制 编程题21:打印杨辉三角形 成绩: 100 / 折扣: 1

21.编程打印如下形式的杨辉三角形,(输出整数时以 ] 作为格式控制),行数由键盘读入,少于 10 行。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 测试输入 期待的输出 时间限制无限制 内存限制64M 测试用例 0 以文本方式显示 以文本方式显示 1. 1? 1. 1? 以文本方式显示 1. 1? 2. 1 1? 以文本方式显示 测试用例 1 1. 2? 无限制 64M 以文本方式显示 1. 1? 2. 1 1? 以文本方式显示 测试用例 2 1. 5? 3. 1 2 1? 4. 1 3 3 1? 5. 1 4 6 4 1? 无限制 64M 编程题22:判断矩阵是否对称 成绩: 100 / 折扣: 1 22.

编写函数 判断 4 阶矩阵是否对称,对称时返回 1 ,不对称时返回 0 。 主函数中由键盘读入 4 阶矩阵,并调用函数进行判断,如果对称输出“ Yes ”,否则输出“ No ”。 (编程提示:函数的形参可以是行指针或列指针)。

测试输入 期待的输出 时间限制 内存限制64M 测试用例 0 以文本方式显示 1. 0 0 0 0? 以文本方式显示 无限制 1. Yes? 2. 0 0 0 0? 3. 0 0 0 0? 4. 0 0 0 0? 以文本方式显示 1. 1 0 0 0? 2. 0 1 0 0? 测试用例 1 3. 0 0 1 0? 4. 0 0 0 1? 以文本方式显示 1. 1 2 3 4? 2. 0 1 0 0? 测试用例 2 3. 0 0 1 0? 4. 4 3 2 1? 以文本方式显示 无限制 1. Yes? 64M 以文本方式显示 无限制 1. No? 64M 编程题23:字符串大小比较 成绩: 100 / 折扣: 1

23.从键盘读入六个字符串(字符串长度 <20 ),排序后并输出。输出时,每输出一个字符串后,输出两个空格。

输出与排序要求采用函数来完成。 测试输入 期待的输出 时间内存限制限制 以文本方式显示 1. abc? 2. ABC ppp? 测试3. ABDD? 用例 0 4. 0987? 5. ,./;L? 6. abd? 以文本方式显示 1. abc? 2. abc ? 测试3. ABC abc? 用例 1 4. ABB? 5. abb? 6. DDD? 以文本方式显示 1. ,./;L 0987 ABC ppp ABDD abc abd ? 无限64M 制 以文本方式显示 1. abc ABB ABC abc DDD abb abc ? 无限64M 制