C语言 小学生测试

合集下载

编程儿童智力测试题(3篇)

编程儿童智力测试题(3篇)

第1篇一、题目背景随着计算机技术的不断发展,编程已经成为一种重要的技能。

为了培养儿童的编程兴趣,提高他们的逻辑思维能力和创新能力,我们设计了一套编程儿童智力测试题。

这套测试题旨在通过编程任务来考察孩子们对编程基础知识的掌握程度,以及他们的逻辑思维、问题解决和创新实践能力。

二、测试目的1. 了解儿童对编程基础知识的掌握程度;2. 考察儿童的逻辑思维、问题解决和创新实践能力;3. 培养儿童的编程兴趣,激发他们的创新潜力;4. 为家长和教师提供评估儿童编程能力的参考。

三、测试内容本测试题共分为四个部分,分别考察以下几个方面:1. 编程基础知识;2. 逻辑思维能力;3. 问题解决能力;4. 创新实践能力。

四、测试题(一)编程基础知识1. 请编写一个Python程序,实现以下功能:输入一个正整数,输出该整数的阶乘。

2. 请编写一个C++程序,实现以下功能:计算并输出一个数列的前n项和,其中数列的通项公式为an = an-1 2 + 1,初始值a1 = 1。

3. 请编写一个Java程序,实现以下功能:输入一个字符串,输出该字符串中所有数字的逆序排列。

(二)逻辑思维能力1. 请编写一个Python程序,实现以下功能:输入一个整数数组,输出该数组中的最大值和最小值。

2. 请编写一个C++程序,实现以下功能:输入一个整数n,输出从1到n的所有素数。

3. 请编写一个Java程序,实现以下功能:输入一个字符串,输出该字符串中所有重复字符的数量。

(三)问题解决能力1. 请编写一个Python程序,实现以下功能:输入一个整数数组,输出该数组中的所有奇数。

2. 请编写一个C++程序,实现以下功能:输入一个整数n,输出一个n阶的斐波那契数列。

3. 请编写一个Java程序,实现以下功能:输入一个整数数组,输出该数组中的所有回文数。

(四)创新实践能力1. 请编写一个Python程序,实现以下功能:输入一个字符串,输出该字符串中的所有子串。

[小学]C语言基础试题

[小学]C语言基础试题

[小学]C语言基础试题C语言基础试题一、单选题:1、以下说法中正确的是( c)A. C语言程序总是从第一个的函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分2、C语言可执行程序的开始执行点是( c)A. 程序中的一条可执行语句B. 程序中第一个函数C. 程序中的main函数D. 包含文件中的第一个函数3、C程序是( B)A. 顺序执行B. 从Main函数开始C. 从函数体开始D. 任意语句4、C语言程序的基本单位是_____B__.A. 语句B. 函数C. 程序行D. 字符5、C语言程序由( C)组成子程序 A.B. 过程C. 函数D. 主程序段程序6、一个C程序的执行是从( A)A. 本程序的main函数开始,到main函数结束B. 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C. 本程序的main函数开始,到本程序文件的最后一个函数结束D. 本程序文件的第一个函数开始,到本程序main函数结束7、以下叙述正确的是( C)A. 在C程序中,main函数必须位于程序的最前面B. C程序的每行中只能写一条语句C. C语言本身没有输入输出语句D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误8、以下叙述不正确的是 DA. 一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C程序中,注释说明只能位于一条语句的后面9、C语言规定,在一个源程序中,main函数的位置(C)A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后10、一个C语言程序是由 BA. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成二、填空题:1、函数体用____{___开始,用____}__结束。

计算机二年级c语言试题及详细解答答案资料

计算机二年级c语言试题及详细解答答案资料

计算机二年级c语言试题及详细解答答案资料文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列数据结构中,属于非线性结构的是________。

A)循环队列 B)带链队列 C)二叉树 D)带链栈(2)下列数据结构中,能够按照"先进后出"原则存取数据的是________。

A)循环队列 B)栈 C)队列 D)二叉树(3)对于循环队列,下列叙述中正确的是________。

A)队头指针是固定不变的B)队头指针一定大于队尾指针C)队头指针一定小于队尾指针D)队头指针可以大于队尾指针,也可以小于队尾指针(4)算法的空间复杂度是指________。

A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的临时工作单元数(5)软件设计中划分模块的一个准则是________。

A)低内聚低耦合 B)高内聚低耦合 C)低内聚高耦合 D)高内聚高耦合(6)下列选项中不属于结构化程序设计原则的是________。

A)可封装 B)自顶向下 C)模块化 D)逐步求精(7)软件详细设计产生的图如下:该图是。

A)N-S图 B)PAD图 C)程序流程图 D)E-R图(8)数据库管理系统是________。

A)操作系统的一部分B)在操作系统支持下的系统软件C)一种编译系统D)一种操作系统(9)在E-R图中,用来表示实体联系的图形是________。

A)椭圆形 B)矩形C)菱形 D)三角形(10)有三个关系R,S和T如下:其中关系T由关系R和S________。

A)选择 B)投影 C)交 D)并(11)以下叙述中正确的是________。

A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整(12)以下选项中,能用作用户标识符的是________。

c语言小学生测验题

c语言小学生测验题
AB1234 90 98 seconds
你的编程报告应该包括:
(1)伪代码或流程图来描述你的程序算法
(2)在屏幕上显示出来
(3)C语言源文件
大作业提交要求:
1.须提交的文档:C源代码文件,包含伪码/流程图和运行结果的Word文档
48 + 32 =80

56 / 28 =2
注意:1)回答完之前一个问题后下一个问题才出现
2)这些数学问题应该包含加减乘除,它们应该是随机出现的
3)确保问题的结果小于100,并大于0;除数不能为0
4)答完10道题后,记录学生总共用的时间
5)给每个同学的分数,保存这个学生的ID,成绩和时间并将文件命名为“record.txt”
6)在屏幕上显示一下信息
Prob. | Correct Answ. |UrAnsw
(B)检查得分:搜索文件“record.txt”,并列出了这个学生所有的历史成绩如
Your previous records are:
AB1234 80 150 seconds
AB1234 50 182 seconds
写一个程序,便于小学母和四个数字如Please input your four digit ID no:AB1234)
该程序应有输入验证
然后程序应包含这3个项目
(1)开始测试
(2)评分
(3)退出
A)测试:该程序需给出10个数学问题如
12 * 3 =36

中小学c语言考试题目及答案

中小学c语言考试题目及答案

中小学c语言考试题目及答案1. 题目一:变量声明问题:请写出声明一个整型变量 `a` 的语句。

答案:```cint a;```2. 题目二:数组初始化问题:给定一个整型数组 `int arr[5] = {1, 2, 3, 4, 5};`,写出访问数组第三个元素的语句。

答案:```carr[2];```3. 题目三:条件语句问题:编写一个C语言程序,判断一个整数 `n` 是否为偶数。

答案:```c#include <stdio.h>int main() {int n;printf("Enter an integer: ");scanf("%d", &n);if (n % 2 == 0) {printf("%d is even.\n", n);} else {printf("%d is odd.\n", n);}return 0;}```4. 题目四:循环结构问题:编写一个C语言程序,计算从1到100的整数之和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("Sum of numbers from 1 to 100 is %d.\n", sum); return 0;}```5. 题目五:函数定义问题:定义一个函数 `max`,该函数接受两个整数参数,并返回较大的一个。

答案:```cint max(int x, int y) {return (x > y) ? x : y;}```6. 题目六:指针使用问题:编写一个C语言程序,交换两个整数变量 `a` 和 `b` 的值。

答案:```c#include <stdio.h>void swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}int main() {int a = 10, b = 20;printf("Before swap: a = %d, b = %d\n", a, b);swap(&a, &b);printf("After swap: a = %d, b = %d\n", a, b);return 0;}```7. 题目七:字符串操作问题:编写一个C语言程序,将字符串 `"Hello, World!"` 反转。

计算机二年级C语言考试真题汇总

计算机二年级C语言考试真题汇总

模拟卷11 [填空题]下列给定程序中,函数fun的功能是:在形参S所指字符串中寻找与参数C相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。

例如,若s所指字符串为“baacda”,c中的字符为a,执行后S所指字符串为“baaaacdaa”。

请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。

注意:部分源程序给出如下。

不得增行或删行,也不得更改程序的结构!试题程序:参考解析:【参考答案】【解题思路】填空1:for语句循环条件是判断是否到达字符串结尾,即当前字符是否为‘\0’。

填空2:while语句用以确定字符串的长度,所以变量n赋初值为0。

填空3:题目要求如果找到与参数c相同的字符,就在后面插入一个相同的字符,且找到后应该给数组元素赋值,本题目给出参数为c。

二、程序修改题2 [简答题]下列给定程序中函数fun的功能是:逐个比较p、q所指两个字符串对应位置上的字符,并把ASCII值大或相等的字符依次存放到c所指的数组中,形成一个新的字符串。

例如,若主函数中a字符串为“aBCDeFgH”,b字符串为"Abcd",则c中的字符串应为“aBcdeFgH”。

请改正程序中的错误,使它能得出正确的结果。

注意:部分源程序在文件MODl1.C中,不得增行或删行,也不得更改程序的结构!参考解析:【参考答案】 (1)int k=0;(2)while(*p||*q)【考点分析】本题考查:变量初始化,需根据题意确定变量含义,然后对其进行初始化操作;while 循环语句。

【解题思路】(1)变量k存放数组e的下标,因此应初始化为0。

(2)while循环语句的循环条件是判断两个字符串是否到达结尾。

三. 程序设计题3 [简答题]规定输入的字符串中只包含字母和*号。

请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。

例如,字符串中的内容为:“****A*BC*DEF*G*******”.删除后,字符串中的内容应当是:“****A*BC*DEF*G”。

三年级C语言考试

三年级C语言考试

三年级一班C语言期末考试试题一、选择题(30分)1、若有说明语句”char a= …\285‟ ; ”则变量a()。

A、包含1个字符B、包含2个字符C、包含3个字符D、说明不合法2、设变量均已正确定义,若要通过scanf ( “%d%c%d%c” ,&a1,&c1,&a2,&c2) ;语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。

以下所示的输入形式正确的是()。

A、10 X 20 Y<回车>B、10 X20 Y<回车>C、10 X<回车>D、10X<回车>20 Y<回车> 20Y<回车>3、设有定义:int k=0;以下选项的四个表达式中与其他三个表达式的值不相同的是()。

A、k++B、k+=1C、++kD、k+14、有以下程序main(){unsigned int x=0xFFFF ;printf ( “%u\n” ,x ) ;}}程序运行后的输出结果是()。

A、-1B、65535C、32767D、OXFFFF5、以下选项中,当x为大于1的奇数时,值为0的表达式()。

A、x%2==1B、x/2C、x%2!=0D、x%2==06、有以下程序#include <string.h>main(){ char p[20]={…a‟ , ‟b‟ , ‟c‟ , ‟d ‟ }, q[ ]=”abc” , r[ ]=”abcde” ;strcat ( p ,r ) ; strcpy ( p+strlen ( q ) ,q ) ;printf ( “%d\n” ,strlen(p)) ; }程序运行后的输出结果是()A、9B、6C、11D、77、有以下程序:main( ){ int a=5, b=4 , c=3 , d=2 ;if ( a>b>c) printf (“%d\n” , d ) ;}执行后输出的结果是()。

小学编程考试试题及答案

小学编程考试试题及答案

小学编程考试试题及答案本文为小学编程考试试题及其答案的提供。

试题包括了编程基础知识和技能的测试,旨在帮助小学生巩固和提升编程能力。

以下是试题及答案的详细内容:编程试题一:变量与数据类型1. 将下列变量的数据类型填入括号内:a) 姓名:(字符串)b) 年龄:(整数)c) 成绩:(浮点数)d) 是否合格:(布尔值)答案:a) 姓名:(字符串)b) 年龄:(整数)c) 成绩:(浮点数)d) 是否合格:(布尔值)编程试题二:条件语句写一个程序,判断学生的数学成绩是否及格。

如果分数大于等于60分,则输出"及格",否则输出"不及格"。

```pythonscore = int(input("请输入学生的数学成绩:"))if score >= 60:print("及格")else:print("不及格")```编程试题三:循环语句写一个程序,输出1到10之间的所有偶数。

答案:```pythonfor i in range(1, 11):if i % 2 == 0:print(i)```编程试题四:函数写一个函数,接受一个整数作为参数,返回该整数的平方值。

```pythondef square(num):return num ** 2result = square(5)print(result) # 输出25```编程试题五:列表操作给定一个列表[1, 2, 3, 4, 5],将列表中的每个元素都加上10,并输出修改后的列表。

答案:```pythonnumbers = [1, 2, 3, 4, 5]for i in range(len(numbers)):numbers[i] += 10print(numbers) # 输出[11, 12, 13, 14, 15]```编程试题六:字符串操作将字符串"Hello, World!"反转后输出。

C语言课程设计-小学生数学测试

C语言课程设计-小学生数学测试

C语言课程设计报告《c语言课程设计报告》学院:物理与电子信息学院年级专业:09级电子信息工程2班学号:姓名:安徽师范大学物理与电子信息学院College of Physics and Electronic Information, Anhui Normal University同组人员:指导老师:完成日期:2010年6月21日目录一、所选课题二、设计要求三、程序具体分工四、课题分析与设计五、程序介绍六、源程序代码七、程序调试八、流程图九、实验总结2C语言课程设计报告安徽师范大学物理与电子信息学院College of Physics and Electronic Information, Anhui Normal University 3十、参考文献一、所选课题小学生数学测试二、设计要求1、可选择题型(加,减,乘,除);2、两个数随机产生,若选择加减运算,则产生两位数,且被减数大于减数,若选择乘法运算,则产生一位数,若选择除法运算则被除数能被整除,且除数不能为零。

3、每次在输入答案后应判断对错,并给出是否继续测试的提示,若答案错误,应给出正确答案;4、最后给出评分。

三、程序具体分工乘除部分由我完成,界面和加减测试部分由徐磊完成。

四、课题分析与设计本程序是非数值计算型算法设计,我们设计出了小学生数学测试软件的基本功能,并设计了简单的界面。

本程序主要考察针对小学生该怎样设计程序:例如小学生只进行两位数之间的加减法,只进行一位数与两位数之间的乘法,除法只能是整除等。

课题要求我们设计个可以进行加、减、乘法的程序,但我们设计的这个小学生数学测试软件也不仅实现了加、减、乘法的测试,还实现了除法的测试。

五、程序介绍程序应包括<stdio.h>和<stdlib.h>两个头文件,其中存放库函数,而产生随机数的函数则存放在头文件中。

另外程序有五个函数,分别为void menu(); /*主菜单函数*/ void add() ;/*加法函数*/ void sub();/*减法函数*/ void mul();/*乘法函数*/ void div1();/*除法函数*/,还有产生随机数函数在程序中直接调用。

C语言测试题(附有详细解析)

C语言测试题(附有详细解析)

C语言测试题(附有详细解析)一、选择题1. 下面哪个选项是C语言的合法标识符?A. voidB. 2varC. intD. _temperature解析:C语言的标识符必须以字母或下划线开头,后面可以跟字母、数字或下划线。

选项A和C是C语言的关键字,不能作为标识符。

选项B以数字开头,不合法。

选项D符合标识符的规则,是正确的。

2. 在C语言中,哪个关键字用于定义整型变量?A. floatB. intC. doubleD. char解析:在C语言中,关键字`int`用于定义整型变量。

选项A 用于定义浮点型变量,选项C用于定义双精度浮点型变量,选项D用于定义字符型变量。

因此,正确答案是B。

3. 下面哪个选项是C语言中的逻辑运算符?A.++B. &&C. ||D. !=解析:C语言中的逻辑运算符包括`&&`(逻辑与)和`||`(逻辑或)。

选项A是自增运算符,选项D是不等于运算符,因此正确答案是B和C。

二、填空题4. 下面代码的输出是什么?```c#include <stdio.h>int main() {int x = 5;printf("%d\n", x++);return 0;}```解析:这段代码的输出是5。

在`printf`语句中,`x++`是后缀自增运算符,它先输出x的当前值5,然后x的值增加1。

因此,输出为5。

5. 下面代码的输出是什么?```c#include <stdio.h>int main() {int x = 5, y = 10;printf("%d\n", x > y ? x : y);return 0;}```解析:这段代码的输出是10。

条件运算符`?:`是一个三元运算符,它根据第一个表达式的值来选择第二个或第三个表达式。

在这个例子中,`x > y`是假的,所以输出是`y`的值,即10。

c语言小学生四则运算练习题

c语言小学生四则运算练习题

c语言小学生四则运算练习题### C语言小学生四则运算练习题随着计算机编程教育的普及,越来越多的小学生开始接触编程。

C语言作为一门基础的编程语言,非常适合初学者学习。

四则运算是数学中的基本运算,通过编写C语言程序来实现四则运算,不仅可以锻炼小学生的逻辑思维,还能加深他们对编程语言的理解。

#### 题目一:加法运算编写一个C语言程序,实现两个整数的加法运算。

要求用户输入两个整数,程序输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```#### 题目二:减法运算编写一个C语言程序,实现两个整数的减法运算。

要求用户输入两个整数,程序输出它们的差。

```c#include <stdio.h>int main() {int num1, num2, difference;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);difference = num1 - num2;printf("它们的差是:%d\n", difference);return 0;}```#### 题目三:乘法运算编写一个C语言程序,实现两个整数的乘法运算。

要求用户输入两个整数,程序输出它们的积。

```c#include <stdio.h>int main() {int num1, num2, product;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);product = num1 * num2;printf("它们的积是:%d\n", product);return 0;}```#### 题目四:除法运算编写一个C语言程序,实现两个整数的除法运算。

小学c语言试卷

小学c语言试卷

小学c语言试卷一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function2. 在C语言中,哪个运算符用于取模?A. %B. /C. *D. -3. 下列哪个选项是C语言的合法变量名?A. 2variableB. variable-nameC. variable_nameD. variable$name4. 在C语言中,若要打印输出一个整数,应使用哪个函数?A. printfB. scanfC. coutD. input5. 以下哪个选项是C语言的控制语句?A. ifB. forC. whileD. All of the above6. 在C语言中,哪个关键字用于定义一个数组?A. arrayB. listC. vectorD. None of the above7. 以下哪个选项是C语言的逻辑运算符?A. &&B. ||C. !D. All of the above8. C语言中,哪个关键字用于定义一个结构体?A. structB. classC. unionD. enum9. 在C语言中,哪个函数用于计算两个数的最大值?A. maxB. minC. absD. None of the above10. 下列哪个选项是C语言的输入输出库?A. <iostream>B. <cstdio>C. <iostream.h>D. <cstdio.h>二、填空题(每题2分,共20分)11. 在C语言中,定义一个整型变量的关键字是_______。

12. 一个C语言程序的执行从主函数_______开始。

13. 在C语言中,使用_______函数可以读取用户输入的整数值。

14. 要实现条件控制,可以使用_______语句。

15. 在C语言中,数组的元素默认从下标_______开始。

小学生c语言考试题目及答案

小学生c语言考试题目及答案

小学生c语言考试题目及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. intD. _variable答案:D3. 以下哪个函数用于将字符串转换成浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 在C语言中,以下哪个选项是正确的注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /*这是注释答案:B5. 以下哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D6. 在C语言中,以下哪个关键字用于声明一个函数?A. defineB. functionC. voidD. return答案:C7. 在C语言中,以下哪个选项是正确的数组声明方式?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3};D. int array = {1, 2, 3, 4, 5};答案:A8. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include "stdio.h"B. #include <stdio.h>C. #include "stdio.h"D. #include <stdio.h>答案:B9. 在C语言中,以下哪个关键字用于退出当前循环?A. breakB. continueC. exitD. return答案:A10. 在C语言中,以下哪个函数用于输出格式化的字符串到标准输出设备?A. printfB. scanfC. fprintfD. sprintf答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:______。

利用C语言开发一个“小学生算术四则运算测试系统”

利用C语言开发一个“小学生算术四则运算测试系统”

武汉理工大学华夏学院课程设计课程名称C语言程序设计题目利用C语言开发一个“小学生算术四则运算测试系统”专业____电子商务_____班级______1091_______学号_____20510809105_____姓名______张宇_______成绩_________________指导教师杨沙、王绪梅2010年6月28日至2010年7月2日课程设计任务书设计题目:利用C语言开发一个“小学生算术四则运算测试系统”设计目的1.加深对《C语言程序设计》课程所学知识的理解;2.掌握结构化程序设计的基本方法;3.学会编制结构清晰、风格良好、数据结构选择恰当的C语言程序;4.掌握多模块的C语言程序的调试方法。

设计任务(在规定的时间内完成下列任务)任务描述:利用C语言开发一个“小学生算术四则运算测试系统”该系统是让计算机充当一位给小学生布置作业的算术老师,为学生出题、阅卷该系统应具备以下功能:1.为小学生出题(分别进行+、-、*、÷等不同运算)2.学生做题后,进行评阅;学生每做一题后,评阅时给出“答题正确,很好”或“答题错误,重做”等字样;3.加、减、乘、除运算功能可以自由选择实现;4.运算数值可以控制在两位(或三位)数的四则运算范围内。

具体要完成的任务是:1 完成整个规定任务的设计及调试,得出正确结果,并经教师检查及答辩;2. 写出规范的课程设计说明书;3. 课程设计结束后交设计说明书等文档和设计内容。

设计说明书的主要内容是详细写出在设计过程中所用到的主要技术或方法;4. 从6月28日起,学生每天至少要到设计教室半天以上;5.课程设计报告按国际通用格式书写,具体格式要求请在网络上查阅时间安排6月28日上午1-103教室动员全体学生,给学生下任务书;下午查阅相关资料;6月29日~7月1日完成选题的设计及报告的书写;7月2日上午提交课程设计报告并答辩。

指导教师签名:2010年 6 月27 日教研室主任(或责任教师)签名:2010年 6 月27 日1、问题描述1.1在最开始设计此程序过程中,我定义的变量flag为字符型,当把原程序段中对应于下面的程序段的程序段改为:……scanf("%d",&temp);while(temp!=answer){printf("\n答案错误,重做\n");printf("\n请输入正确的答案:\n");scanf("%d",&temp);}printf("\n继续请按y,退出测试请按n \n");scanf("%c",&flag);while(flag!=y&&flag!=n){printf("\n继续请按1,退出测试请按0 \n");scanf("%d",&flag);}……我将会发现当我做完一题且做对了的时候,无论我输入的是y还是n或者是其他的字符,printf("\n继续请按1,退出测试请按0 \n")这个提示在屏幕上出现两次,说明了在第一个scanf("%c",&flag)语句中无论什么,flag!=y&&flag!=n都是成立的,这说明了在第一个scanf("%c",&flag)中输入的字符并没有赋给flag。

小学生C语言编程练习

小学生C语言编程练习

C语言编程练习(001):编程基础之输入输出题1:编程描述:输入三个整数,把第二个输入的整数输出。

输入:只有一行,共三个整数,整数之间由一个空格分隔。

整数是32位有符号整数。

输出:只有一行,一个整数,即输入的第二个整数。

题2:编程描述:读入一个单精度浮点数,保留3位小数输出这个浮点数。

输入:只有一行,一个单精度浮点数。

输出:也只有一行,读入的单精度浮点数。

题3:编程描述:读入一个双精度浮点数,保留12位小数,输出这个浮点数。

输入:只有一行,一个双精度浮点数。

输出:也只有一行,保留12位小数的浮点数。

题4:编程描述:读入一个字符,一个整数,一个单精度浮点数,一个双精度浮点数,然后按顺序输出它们,并且要求在他们之间用一个空格分隔。

输出浮点数时保留6位小数。

输入:共有四行:第一行是一个字符;第二行是一个整数;第三行是一个单精度浮点数;第四行是一个双精度浮点数。

输出:输出字符、整数、单精度浮点数和双精度浮点数,之间用空格分隔。

题5:编程描述:读入一个双精度浮点数,分别按输出格式“%f”,“%f”保留5位小数,“%e”和“%g”的形式输出这个整数,每次在单独一行上输出。

输入:一个双精度浮点数。

输出:输出有四行:第一行是按“%f”输出的双精度浮点数;第二行是按“%f”保留5位小数输出的双精度浮点数;第三行是按“%e”输出的双精度浮点数;第四行是按“%g”输出的双精度浮点数。

题6题7注释1处:注释2处:注释3处:题8题9:编程问题:鸡兔同笼,共有12个头、40只脚,求鸡和兔子各有多少?算法描述:(1)计算兔子的数量rabbit=(40-2*12)/2(2)计算鸡的数量chick=40- rabbit(3)输出鸡和兔子的数量chick和rabbit的值(4)算法结束题10:编程问题:已知旅行的距离s、汽车平均速度为v、每公升汽油可以行驶的公里数k以及每公升汽油的价格p,求驾驶汽车旅游所花费的时间和购买汽油的钱数。

计算机二年级C语言考试编程题题库

计算机二年级C语言考试编程题题库

计算机二年级C语言考试编程题题库文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]计算机c语言编程题库1、求100之内自然数中最大的能被17整除的数。

#include<>void main(){ int i;for(i=100;i>0;i--)if(i%17==0)break;printf("%d\n",i);}2、已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值。

#include<>void main(){int a,b,c;for(a=1;a<=9;a++){for(b=0;b<=9;b++){for(c=1;c<=9;c++)if(a*100+b*10+c+c*100+b*10+a==1333)printf("%d,%d,%d\n",a,b,c);}}}3、计算并输出200-400之间不能被3整除的整数的和。

#include<>void main(){ int i,sum=0;for(i=200;i<=400;i++)if(i%3!=0)sum=sum+i;printf("%d\n",sum);}4、从键盘输入10个数,统计非负数的个数,并计算非负数的和。

#include<>void main(){ int i,n=0,sum=0;int a[10];printf(“请输入10个数:”);for(i=0;i<10;i++)scanf(“%d”,&a[i]);for(i=0;i<10;i++)if(a[i]>=0){ sum=sum+a[i];n++;}printf("非负个数是%d,sum=%d\n",n,sum);}5、求100之内自然数中偶数之和。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

[南京理工大学紫金学院]
[C语言报告]
小学生测试
成员:谢德煜,徐安伟
徐凡,徐航
指导教师:***
组别:16自动化第7组
2022年4月26日
一、组内成员分工............................................................................................ 错误!未定义书签。

二、课题介绍.................................................................................................... 错误!未定义书签。

三、程序功能介绍............................................................................................ 错误!未定义书签。

四、主体内容.................................................................................................... 错误!未定义书签。

1.设计分析......................................................................................................... 错误!未定义书签。

2.流程图............................................................................................................. 错误!未定义书签。

3.各模块的功能及程序说明............................................................................. 错误!未定义书签。

4.源代码............................................................................................................. 错误!未定义书签。

5.操作方法......................................................................................................... 错误!未定义书签。

6.实验结果......................................................................................................... 错误!未定义书签。

五、设计............................................................................................................ 错误!未定义书签。

一、组内成员分工
谢德煜:报告册书写
徐安伟:分析设计
徐凡:编写程序
徐航:调试修改
二、课题介绍
小学生测验系统
任务:面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。

功能要求:1)电脑随机出10道题,每题10分,程序结束时显示学生得分;
2)确保算式没有超出1~2年级的水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范
围,负数更是不允许的;
3)每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束则输出正
确答案;
4)对于每道题,学生第一次输入正确答案得10分,第二次输入正确答案得7分,第三次输入正确答案得5分,
否则不得分;
5)总成绩90以上显示“SMART”,80-90显示“GOOD”,
70-80显示“OK”,60-70显示“PASS”,60以下显示
“TRY AGAIN”。

三、程序功能介绍
通过随机函数rand()生成两个之和<50且之差>0的两个随机数,以及随机的+—号来实现随机选择两个整数和加减法。

通过if函数来进行的结果的判断,同时进行分数档次的划分,计算最终的十次叠加值得出最后的总分。

从而进行对较为客观的总评。

四、主体内容
1.设计分析:通过随机函数和循环结构来实现面向小学生的测试
3.源代码
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
int num=0,add=0; /* 答题数,总分*/ int score[3]={10,7,5};/*得几分*/
char str[20],str1[10][20];
while(1)
{
int a=0,b=0,d=0,c=0,k=0,i=0,j=-1,result; char sf[2]={'+','-'};/* 符号*/
while(1)
{
a=rand()%51;/*0-50的随机数*/
b=rand()%51;/*0-50的随机数*/
d=rand()%2;/* 随机符号*/
if(d==0)c=a+b;
else c=a-b;
if(c>=0 && c<=50)/* 如果相同重新出题*/ {
sprintf(str,"%d %c %d = \n",a,sf[d],b); strcpy(str1[num],str);
if(num==0) break;
j=-1;
for(i=0; i<num; i++)
{
if(strcmp(str,str1[i])==0)
{ j=1;break;}
}
if(j<0)
break;
}
}
printf("%s\n",str);/* 回答*/
printf("输入计算结果:\n");
while(1)
{
scanf("%d",&result);
k++;
if(result==c)
{
printf("回答正确!\n");
add+=score[k-1];
break;
}
else if(k<3)
{
printf("错误,请重新回答:\n");
}
else
{ printf("错误,正确答案: %d\n",c);
break;
}
}
num++;
if(num==10)break;
}
if(add>=90)printf("\nSMART\n");
else if(add>=80)printf("\nGOOD\n");
else if(add>=70)printf("\nOK\n");
else if(add>=60)printf("\nPASS\n");
else printf("\nTRY AGAIN\n");
getch();
}
五、设计感悟
通过一个学期对C语言这门课程的学习,对于我们来说它已不陌生。

首先对于这次课程安排,感觉还是很紧凑。

在一开始的时候并没有觉得这次的题目会这么难,可当真正做起来的时候,却要艰难很多。

尤其是调试的时候,一次次的不断的修改,一次次的反复寻找。

虽然过程比较辛苦,但收获还是很多的,尤其是对这门课程知识的另一种学习掌握,令我们收获匪浅。

纸上得来终觉浅,绝知此事要躬行。

或许这才是真正的学习,而不是一味地向证书看齐。

相关文档
最新文档