C语言上机测试题
- 格式:rtf
- 大小:99.65 KB
- 文档页数:5
1.程序填空题在主函数中从键盘输入若干个数放入数组a中,用0结束输入但不计入数组。
下列给定程序中,函数fun的功能是:输出数组元素中小于平均值的元素。
例如,数组中元素的值依次为34、54、675、456、453、121,则程序的运行结果为34、54、121。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!#include <conio.h>#include <stdio.h>void fun(___1___,int n){double count=0.0;double average=0.0;int i=0;for(i=0;i<n;i++)___2___;average=___3___;for(i=0;i<n;i++)if(a[i]<average){if(i%5==0)printf("\n");printf("%d,",a[i]);}}main(){int a[1000];int i=0;printf("\nPlease enter datas(end with 0):");do{scanf("%d",&a[i]);}while(a[i++]!=0);fun(a,i-1);}【答案】(1) int a[] (2)count+=a[i]或count=count+a[i] (3)count/n2.程序修改题给定程序中,函数fun的功能是:根据整型形参m,计算如下公式的值:y=1+1/(2*2)+1/(3*3)+1/(4*4)+…+1/(m*m)例如:若m中的值为5,则应输出1.463611。
请改正程序中的错误,使其能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include <stdio.h>double fun(int m){double y=1.0;int I;/**********found**********/for(i=2;i<m;i++)/**********found**********/y+=1/(i*i);return(y);}main(){int n=5;printf("\nThe result is %lf\n", fun(n));}【答案】(1)将for(i=2;i<m;i++) 改为:for(i=2;i<=m;i++)(2)将y+=1/(i*i); 改为:y +=1.0/(i*i);3.程序设计题函数fun的功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。
1. 下列程序中,要求main函数实现如下功能:从键盘上输入三个正整数,求出它们中的最大值。
请完善程序,并在程序最后用注释的方式给出你的测试数据及在这组测试数据下的运行结果。
#in elude <stdio.h>void mai n(){ int a,b,c,max;prin tf("E nter three in tegers:");scan f("%d%d%d", &a, &b,&c);if(a>b)max=a;elsemax=bif(c>max)max=c;printf("max of the three nu mbers is %d",max);} /*1,2,5 max of the three nu mbers is 5*/2. 请编程序,对从键盘上输入的x值,根据以下函数关系计算出相应的y值(设x,y均为整型量)。
#in clude<stdio.h>main (){int x,y;scan f("%d",& x);if(x<0)y=0;elseif(x>=0&& x<=10)y=x;elseif(x>=10&& x<=20) y=10;elsey=-5*x+20; prin tf("%d",y);}1)1 23 4/53. 写程序计算下列各表达式的值:[ 2 22)13-(2.24-0.24 ) 耳3683) 2恵:;13 e2#in clude<stdio.h>#in clude<math.h>main () {float a,b,c;a=2.0/(4.0/5+3)+1;b=sqrt((13-pow(2.24-pow(0.24,2),2))/3.68);c=2*3.14159*sqrt(13+ exp(2));prin tf("%f\n%f\n%f',a,b,c);}4. 写程序计算5X2+2X+6的两个实根。
第一次上机作业(2021):要求:独立完成,上机调试通事后上交作业提交邮件主题命名:班级学号姓名(第1次作业),例如:电1301班2王鹏(第1次作业)以附件形式将每次作业的所有程序源程序紧缩打包后提交,紧缩文件命名格式同上。
程序必需采用缩进格式1.大写字母转换成小写字母从键盘输入一个大写英文字母,输出相应的小写字母。
例:输入G输出g2.求平方根输入一个实数x,计算并输出其平方根(保留1 位小数)。
例:输入17输出The square root of is3.温度转换设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32)a)输入华氏温度(实型)b)输出的摄氏温度结果保留两位小数例:Please input Fahrenheit temperature:The corresponding Celsius temperature is4. 计算旅途时刻输入二个整数time1 和time2,表示火车的起身时刻和抵达时刻,计算并输出旅途时刻。
(输入的有效的时刻范围是0000 到2359,不需要考虑起身时刻晚于抵达时刻的情形。
)例:输入712 1411 (起身时刻是7:12,抵达时刻是14:11)输出The train journey time is 6 hours 59 minutes.5. 数字加密输入一个四位数,将其加密后输出。
方式是将该数每一名上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。
例:输入1257输出The encrypted number is 4601试探题:你可否编程找出谁做的好事?有四位同窗中的一名做了好事,不留名,夸奖信来了以后,校长问这四位是谁做的好事。
⏹A说:不是我。
⏹B说:是C。
⏹C说:是D。
⏹D说:他乱说。
已知三个人说的是实话,一个人说的是谎话。
此刻要依照这些信息,找出做了好事的人。
C语言编程及上机题,1321,813,58,35,23,12C 语言编程及上机题1. 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,问第10次落地时,共经过多少米?第10次反弹多高?请编程实现。
2. 试编程序,找出1至99之间的全部同构数。
同构数是这样一组数:它出现在平方数的右边。
例如:5是25右边的数,25是625右边的数,5和25都是同构数。
3. 有一分数序列:编写求这个数列前20项之和的程序。
4. 编写满足条件1+2+3+…+n ≥500的最小n 及和s 的程序。
5. 已知正弦值近似的多项式计算公式为:输入x 和ε,编写按上述公式计算sin(x)近似值且误差小于ε的程序。
设:x=1.57 ε=0.0000016. 有一高楼,有阶梯若干级,每步跨2级,最后余1级;每步跨3级,最后余2级;每步跨5级,最后余4级;每步跨6级,最后余5级;每步跨7级,正好到楼顶。
计算该楼至少多少级。
7. 从键盘输入若干个整数(数据个数少于50个),其值在0至4的范围内,用-1作为输入结束标志。
统计每个整数的个数。
试编程。
8. 求出1至599中能被3整除,且至少有一位数字为5的所有整数。
如15,51,513等均是满足条件的整数。
要求每行输出六个数。
9. 用以下的递归公式求数列a 0,a 1,……,a 19,递归公式为:a 0=0; a 1=1; a 2=1; a i = a i -3 +2a i -2 +a i -1(当i 大于2时)。
10. 求满足条件abcd=(ab)2+(cd)2有所有四位数。
11. 生成一个数列的前100项。
该数列的第一、第二项分别为2、3,以后每个奇数编号的项是前两项之和,偶数编号的项是前两项之差(前项减后项)。
12. 计算自然数e 和π的值,e 的值精确到小数点后6位。
求e 的近似值的计算公式:求π/2的近似值的计算公式为:取n=1000时的π值。
13. 使用弦截法解下列方程的根:x 3-5x 2+16x -30=0。
C语言上机程序设计题库【程序设计】功能:根据整型形参m,计算如下公式的值:y=sin(m)*10。
【参考代码】double y=0;y=sin(m)*10;return(y);功能:若x、y为奇数,求x到y之间的奇数和;若x、y为偶数,则求x到y之间的偶数和。
【参考代码】int i,s=0;for(i=x;i<=y;i+=2)s=s+i;return s;功能:编写程序,实现矩阵(3行3列)的转置(即行列互换)【参考代码】int i,j,t;for(i=0; i < 3; i++)for(j=0; j < i; j++){ t=array[i][j];array[i][j]=array[j][i];array[j][i]=t; }功能:求一个四位数的各位数字的立方和。
【参考代码】int d,s=0;while (n>0){d=n%10;s+=d*d*d;n/=10;}return s;功能:请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
二维数组中的数已在主函数中赋予。
【参考代码】int i,j;for(j=0;j<N;j++){pp[j]=tt[0][j];for(i=1;i<M;i++)if(tt[i][j]<pp[j])pp[j]=tt[i][j];}功能:求一组数中大于平均值的数的个数。
【参考代码】int i,k=0;float s=0,ave;for(i=0;i<n;i++)s+=a[i];ave=s/n;printf("%f ",ave);for(i=0;i<n;i++)if(a[i]>ave)k++;return k;题目:分别统计字符串中字母、数字、空格和其他字符出现的次数(字符长度小于80)。
C语言在线测试题目及答案SANY GROUP system office room 【SANYUA16H-SANYHUASANYUA8Q8-第一章、第二章、第三章第一题、单项选择题(每题1分,5道题共5分)1、在以下关于C语言的叙述中,正确的说法是: BA、C语言比汇编语言快B、C语言比BASIC语言快C、C语言比BASIC语言和汇编语言都快D、C语言比BASIC语言慢2、在C语言中,不正确的常量是: BA、0xf6B、0876C、.5e-6D、 3e 23、属于低级语言的计算机语言是( )。
BA、机器语言B、汇编语言C、Java语言D、Pascal语言4、对于链接,正确的说法为()。
DA、链接是将源程序和库函数链接到一起,生成可执行程序。
B、链接是将源程序、目标程序和其他源程序链接到一起,生成可执行程序。
C、链接是将源程序、库函数和其他源程序链接到一起,生成可执行程序。
D、链接是将目标程序、库函数和其他目标程序链接到一起,生成可执行程序。
5、下列不能表示常量大写英文字母A的是()。
BA、常量:‘A’B、常量:“A”C、常量:‘\x41’D、常量:‘\101’第二题、多项选择题(每题2分,5道题共10分)1、对于16位系统中,C语言中整数 -8在内存中的错误存储形式是: BCDA、1111 1111 1111 1000B、1000 0000 0000 0000C、1000 0000 0000 1000D、1111 1111 1111 01112、下列关于C语言用户标识符的叙述中,不正确的叙述是: ACDA、用户标识符中可以出现下划线和中划线(减号)B、用户标识符中不可以出现中划线,但可以出现下划线C、用户标识符中可以出现下划线,但不可以放在用户标识符的开头D、用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头3、关于C语言程序的语句,正确的说法是( )。
BDA、一条语句只能占一行B、一行可以书写多条语句C、语句的结束标识符是句号D、建议每条语句占一行4、与汇编程序相比,C语言程序的优点包括( )。
C语言实验报告实验1-1:hello world程序:源代码:#include<stdio.h>main(){printf("hello world!\n");system("pause");}实验1-2:完成3个数据的输入、求和并输出计算结果的程序:源代码:#include<stdio.h>main(){int i,j,k,sum;scanf("%d%d%d",&i,&j,&k);sum=i+j+k;printf("sum=%d",sum);system("pause");实验1-3:在屏幕上输出如下图形:ABBBCCCCC源代码:#include<stdio.h>main(){printf(" A\n");printf(" BBB\n");printf(" CCCCC\n");system("pause");}实验2-1:计算由键盘输入的任何两个双精度数据的平均值源代码:#include<stdio.h>main(){double a,b;scanf("%lf%lf",&a,&b);printf("%.1lf\n",(a+b)/2);system("pause");}实验2-2:写一个输入7个数据的程序,把输入的数据代入a + b * (c – d ) / e * f – g 表达式进行运算源代码:#include<stdio.h>main(){float a,b,c,d,e,f,g,x;scanf("%f%f%f%f%f%f%f",&a,&b,&c,&d,&e,&f,&g);x=a + b * (c - d ) / e * f - g;printf("x=%f",x);system("pause");}实验2-3:编写一个C语言程序,测试下列各表达式:i, ji + 1 , j + 1i++ , j++++i , ++ji+++++j源代码:#include<stdio.h>main(){int i=1,j=1;printf("%d %d\n",i+1,j+1);printf("%d %d\n",i++,j++);printf("%d %d\n",++i,++j);printf("%d\n",(i++)+(++j));system("pause");}实验2-4:输入存款金额money,存期year和年利率rate,根据下列公式计算存款到期时的利息interest (税前),输出时保留2位小数。
重庆市计算机等级考试C语言上机模拟试题1、函数adddigit的原型为int adddigit(int num);,其功能是求num各位数字之和。
要求编制该函数并用如下所示的主函数进行测试,源程序存入test1.c。
# include “stdio.h”# include “math.h”void main(){ int adddigit(int num);int n;scanf(“%d”,&n);printf(“sum=%d\n”,adddigit(n));}2、编制程序输出如下所示图形,源程序存入test11.c。
1121123211234321123454321123456543213、编制程序实现功能:从键盘上输入若干个值为0~32767之间的正整数,并将每个整数的各位数字之和存放在数组a中。
要求:被处理数据的个数由键盘输入指定(小于50个数):求每个整数各位数字之和的功能用自定义函数实现:源程序存入test21.c。
4、编制程序实现其6Ⅹ6的整型矩阵的输入数据,然后求出其最大元素以及最大元素位置的下标并输出的功能,源程序存入test41.c。
5、编程实现从键盘为一个6Ⅹ6整型数组输入数据,然后找出其每一行中的最小值保存在一维数组中,并输出该一维数组的所有元素。
源程序存入test51.c。
6、函数fac的原型为long fac(it j);,其功能是利用静态变量实现n!。
要求编制该函数并用如下的主函数进行测试。
源程序存入test61.c。
7、函数chrn的原型为int chrn(char *s,char c);,其功能是测试字符c在字符串s中出现的次数。
要求编制该函数并用相应的主函数进行测试。
源程序存入test71.c。
8、求出100~999之间能够被3整除,且至少有一位数字是5的所有整数。
源程序存入test81.c。
9、编写一个程序计算下式之和。
1+(1+2)+(1+2+3)+……+(1+2+3+4+5+6+7+8+9+10). 源程序存入test91.c。
c语言上机考试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个是合法的整型常量?A. 0x12B. 0x12.0C. 0x12LD. 0x12.0L答案:A2. 下列哪个选项是正确的C语言标识符?A. 2variableB. variable2C. variable-2D. variable_2答案:D3. C语言中,以下哪个是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World'D. 'Hello, World'答案:A4. 在C语言中,以下哪个是正确的函数声明?A. int myFunction(int a);B. int myFunction();C. int myFunction(int);D. int myFunction(int a, int b);答案:A5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D二、填空题(每题3分,共15分)1. 在C语言中,用于定义整型变量的关键字是________。
答案:int2. 若有定义 int a = 10;,则表达式 a++ 的值为________。
答案:103. C语言中,用于表示逻辑“与”的运算符是________。
答案:&&4. 在C语言中,以下代码段的输出结果是________。
```c#include <stdio.h>int main() {int x = 5;printf("%d", x++);return 0;}```答案:55. 若有定义 float b = 3.14;,则表达式 b * 100 的值为________。
答案:314.0三、编程题(每题20分,共40分)1. 编写一个C程序,计算并输出以下数列的前10项之和:1 + 1/2 + 1/3 + ... + 1/10。
c语言上机考试题库1. 编写一个程序,从键盘输入两个整数,然后交换它们的值并输出。
```c#include <stdio.h>int main(){int num1, num2, temp;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);temp = num1;num1 = num2;num2 = temp;printf("交换后的值为:%d %d\n", num1, num2);return 0;}```2. 编写一个程序,输入一个整数,判断该数是奇数还是偶数,并输出对应结果。
```cint main(){int num;printf("请输入一个整数:");scanf("%d", &num);if(num % 2 == 0){printf("%d是偶数\n", num);}else{printf("%d是奇数\n", num);}return 0;}```3. 编写一个程序,输入一个大写字母,将其转换为小写字母并输出。
```cint main(){char upperCase, lowerCase;printf("请输入一个大写字母:");scanf("%c", &upperCase);lowerCase = upperCase + 32;printf("转换为小写字母:%c\n", lowerCase);return 0;}```4. 编写一个程序,输入一个字符串,然后判断该字符串是否为回文,并输出对应结果。
```c#include <stdio.h>#include <string.h>int main(){char str[100];int i, j, flag = 1;printf("请输入一个字符串:");gets(str);for(i = 0, j = strlen(str) - 1; i < j; i++, j--) {if(str[i] != str[j]){flag = 0;break;}}if(flag == 1){printf("该字符串是回文\n");}else{printf("该字符串不是回文\n");}return 0;}```5. 编写一个程序,输入一个整数n,计算并输出1到n的累加和。
c上机考试试题# C上机考试试题一、单项选择题(每题2分,共20分)1. 下列关于C语言基本数据类型的说法中,错误的是()。
- A. `int` 类型通常用于表示整数- B. `float` 类型用于表示单精度浮点数- C. `double` 类型用于表示双精度浮点数- D. `char` 类型用于表示一个字符或整数2. 在C语言中,用于定义数组的关键字是()。
- A. `define`- B. `array`- C. `list`- D. `int[]`3. C语言标准输入输出使用的库函数是()。
- A. `<stdio.h>`- B. `<math.h>`- C. `<stdlib.h>`- D. `<iostream>`4. 下列哪个是C语言中的合法标识符?()- A. `class`- B. `case`- C. `2b`- D. `user_name`5. C语言中,用于实现字符串连接的函数是()。
- A. `strcpy()`- B. `strcat()`- C. `strlen()`- D. `strncpy()`6. 在C语言中,`printf` 函数的返回类型是()。
- A. `int`- B. `float`- C. `char`- D. `void`7. 下列关于C语言函数的描述中,错误的是()。
- A. 函数可以返回一个值- B. 函数可以没有返回值- C. 函数必须有返回值- D. 函数可以有多个返回值8. 在C语言中,用于计算两个整数的最大值的宏定义在哪个头文件中?()- A. `<math.h>`- B. `<stdlib.h>`- C. `<limits.h>`- D. `<stdio.h>`9. C语言中,`break` 语句的作用是()。
- A. 跳出整个循环- B. 跳出最近的一个循环- C. 跳出整个程序- D. 继续下一次循环10. 下列关于C语言结构体的描述中,错误的是()。
c语言上机试题库及答案1. 题目一:字符串翻转要求:编写一个C语言程序,实现字符串的翻转功能。
```c#include <stdio.h>#include <string.h>void reverseString(char *str) {int len = strlen(str);char temp;for(int i = 0; i < len / 2; i++) {temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[100];printf("Enter a string: ");scanf("%s", str);reverseString(str);printf("Reversed string: %s\n", str);return 0;}```2. 题目二:计算数组中的最大值要求:编写一个C语言程序,计算并输出一个整数数组中的最大值。
```c#include <stdio.h>int findMax(int arr[], int size) {int max = arr[0];for(int i = 1; i < size; i++) {if(arr[i] > max) {max = arr[i];}}return max;}int main() {int arr[] = {10, 45, 23, 67, 89, 34};int size = sizeof(arr) / sizeof(arr[0]);int max = findMax(arr, size);printf("The maximum value in the array is: %d\n", max); return 0;}```3. 题目三:实现二分查找要求:编写一个C语言程序,实现一个二分查找算法,查找一个有序数组中是否存在目标值。
C语言编程及上机题C语言是一种广泛应用于计算机科学和软件开发的编程语言。
它被广泛使用于系统级编程、嵌入式系统、游戏开发、网络编程以及其他许多领域。
本文将介绍C语言的基础知识,并提供一些经典的C语言上机题。
一、C语言基础知识1. 数据类型和变量在C语言中,数据类型用于确定变量的存储空间和操作。
常见的基本数据类型有整型(int)、浮点型(float)、字符型(char)等。
定义变量时需要指定数据类型,并为变量分配内存空间。
2. 运算符和表达式C语言支持各种运算符,包括算术运算符、关系运算符、逻辑运算符等。
通过组合运算符和操作数,可以构建表达式,并实现计算和判断功能。
3. 控制流语句控制流语句用于控制程序的执行顺序和条件。
常见的控制流语句有条件语句(if-else)、循环语句(for、while、do-while)以及跳转语句(continue、break)等。
这些语句提供了对程序的灵活控制。
4. 函数函数是C语言程序的基本组成单元,可以将一段代码封装成一个函数,并通过调用函数来执行相应的功能。
函数可以返回值,也可以不返回值。
二、经典上机题以下是几个经典的C语言上机题,通过解答这些题目,可以巩固对C语言基础知识的理解和应用。
1. 计算阶乘编写一个函数,输入一个整数n,计算并输出n的阶乘。
示例输入输出:输入:5输出:1202. 查找最大值编写一个函数,输入一个整型数组和数组的长度,找出数组中的最大值并返回。
示例输入输出:输入:[2, 5, 10, 1, 8], 5输出:103. 字符串反转编写一个函数,输入一个字符串,将字符串反转后输出。
示例输入输出:输入:"Hello, World!"输出:"!dlroW ,olleH"4. 矩阵乘法编写一个函数,输入两个矩阵和矩阵的维度,计算并返回两个矩阵的乘积。
示例输入输出:输入:A = [[1, 2, 3], [4, 5, 6]], B = [[7, 8], [9, 10], [11, 12]], m = 2, n = 3, p = 2输出:[[58, 64], [139, 154]]5. 冒泡排序编写一个函数,输入一个整型数组和数组的长度,使用冒泡排序对数组进行升序排序,并输出排序后的数组。
c语言上机考试试题C语言上机考试试题在计算机科学领域中,C语言是一门非常重要的编程语言。
它的简洁性和高效性使得它成为了许多程序员的首选。
而在学习C语言的过程中,上机考试是不可或缺的一环。
本文将为大家提供一些常见的C语言上机考试试题,帮助大家更好地准备考试。
一、基础知识题1. 请简述C语言的特点和优势。
2. 什么是变量?请举例说明。
3. 请解释C语言中的数据类型,并列举一些常见的数据类型。
4. 请解释C语言中的运算符,并列举一些常用的运算符。
5. 请解释C语言中的控制语句,并列举一些常见的控制语句。
二、编程题1. 编写一个程序,要求用户输入两个整数,然后输出它们的和、差、积和商。
2. 编写一个程序,要求用户输入一个正整数N,然后计算并输出1到N的所有正整数的和。
3. 编写一个程序,要求用户输入一个字符串,然后判断该字符串是否是回文字符串(即正向和反向读都相同)。
4. 编写一个程序,要求用户输入一个正整数N,然后输出N的所有因子。
5. 编写一个程序,要求用户输入一个字符串,然后统计并输出该字符串中的字母、数字和其他字符的个数。
三、综合题1. 编写一个程序,要求用户输入一个正整数N,然后输出N的阶乘。
2. 编写一个程序,要求用户输入一个正整数N,然后判断该数是否为素数。
3. 编写一个程序,要求用户输入一个正整数N,然后输出N个斐波那契数列的元素。
4. 编写一个程序,要求用户输入一个字符串,然后将字符串中的所有小写字母转换为大写字母,并输出转换后的字符串。
5. 编写一个程序,要求用户输入一个正整数N,然后输出一个N行的等腰三角形。
通过以上的试题,我们可以看到,C语言上机考试试题涵盖了C语言的基础知识、编程技巧和综合应用。
在备考过程中,我们需要掌握C语言的特点和优势,了解各种数据类型和运算符的使用方法,熟练掌握控制语句的应用,同时还需要有一定的编程能力和逻辑思维能力。
在解答试题时,我们需要仔细阅读题目要求,理清思路,合理设计程序结构,注意变量命名规范,避免出现语法错误和逻辑错误。
二级C语言上机考试题库及答案1. 题目:编写一个C语言程序,实现输入一个整数,判断其是否为素数,并输出结果。
程序代码如下:```c#include <stdio.h>#include <math.h>int isPrime(int num) {if (num <= 1) return 0;for (int i = 2; i <= sqrt(num); i++) {if (num % i == 0) return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d 是素数。
\n", num);} else {printf("%d 不是素数。
\n", num);}return 0;}答案:该程序首先定义了一个判断素数的函数`isPrime`,它通过遍历2到`sqrt(num)`之间的所有整数,检查是否有能整除`num`的数。
如果找到,则`num`不是素数。
在`main`函数中,程序提示用户输入一个整数,然后调用`isPrime`函数判断该数是否为素数,并输出相应的结果。
2. 题目:编写一个C语言程序,实现一个简单的学生成绩管理系统,要求能够添加学生信息、查询学生信息、删除学生信息和显示所有学生信息。
程序代码如下:```c#include <stdio.h>#include <stdlib.h>typedef struct {char name[50];int score;} Student;Student students[100];int count = 0;void addStudent(const char* name, int score) {if (count < 100) {strcpy(students[count].name, name);students[count].score = score;count++;} else {printf("学生信息已满。
西北农林科技大学本科课程考试试题(卷)2014—2015学年《C语言程序设计》期末考试编程题专业班级:命题教师:集体命题审题教师:学生姓名:学号:考试成绩:一、计算n个数倒数之和描述:编写程序计算(1+1/2+1/3+1/4+…+1/n)的结果,其中变量n从键盘输入,要求n是大于0的整数。
输入:n输出:公式(1+1/2+1/3+1/4+…+1/n)的计算结果。
输入样例:10输出样例:sum=2.928968提示:结果输出,请使用代码:printf("sum=%lf",sum);示例代码:#include <stdio.h>int main( ){int i=1, n;do{scanf("%d",&n);}while(n<0);double sum=0;while (i<=n){sum+=1.0/i;i++;}printf("sum=%lf",sum);return 0;}测试用例:二、数组排序描述:从键盘上输入6个整型数,利用函数指针实现这6个整型数的升序和降序排列,并输出排序后的结果,要求使用函数调用、函数指针以及数组编程实现。
提示:1、实现“大于”函数,该函数比较两个整型数的大小,并返回x > y的值,要求函数原型为:int greater(int x, int y)。
2、实现“小于”函数,该函数比较两个整型数的大小,并返回x < y的值,要求函数原其函数原型为:int lessthan(int x, int y)。
3、实现排序函数,排序函数依据传入的函数不同,实现整型数组的降序或者升序排序,要求函数原型为:void sort(int a[], int n, int (*comp)(int, int))。
注意:指定的.................................3.个函数原型不能有任何改动,包括其函数名称及形参列表等。
(完整版)C语言上机练习题及答案1输入三个整数x,y,z,把这三个数由小到大输出。
# includevoid main(){int x,y,z,a;scanf ("%d,%d,%d",&x,&y,&z);if(x>y) {a=x; x=y;y=a;}if(x>z) { a=x; x=z; z=a;}if(y>z) {a=y; y=z; z=a;}printf("%d,%d,%d\n",x,y,z);}2输入圆的半径,输出圆的周长和面积。
# include# define PI 3.1415926# define S ==PI*r*r# define V (4.0/3)*PI*r*r*rvoid main(){double r;printf("please input r:");scanf("%lf",&r);printf("area is %.4lf\n",S);printf("volume is %.4lf\n",V);}输入正方形的边长,输出正方形的周长和面积。
# includevoid main(){float c,zc,mj;printf("输入你的正方形");scanf("%f\n",&c);zc=4*c;mj=c*c;printf("周长%f,面积%f,边长%f",zc,mj,c);}3用格式输入函数输入3个字符,并用输出函数反向输出3个字符和他们的ASCII 码。
# includeint main(){char-ch1,ch2,ch3;printf("please input three characters:\n");scanf("%C%C%c",&ch1,&ch2,&ch3);printf("%c\n%d\n",ch3,ch3);printf("%c\n%d\n",ch2,ch2);printf("%c\n%d\n",ch1,ch1);}输入一个摄氏温度,要求输出华氏温度。
01.编写程序,从键盘输入一个正数,判断它是否既是5又是7的倍数。
若是,则输出yes,否则输出no。
02.编写程序,从键盘输入一个五分制成绩,将其转换成百分制成绩输出。
03.编程实现以下功能:读入两个运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可为'+','-','*','/'(用switch语句实现)。
04.从键盘输入一行字符,统计并输出其中的单词个数,单词间用空格间隔。
如输入: I am a student 结果显示:word=4。
05.从键盘输入3个字符串,要求找出最大的字符串并输出。
06.某班有多个同学,请编程实现输出该班高数课程的最高分、高低分和全班平均分。
07.输入两个正整数,求其最大公约数和最小公倍数。
08.从键盘输入10个实型数据,用查找数组中是否存在某一数据,存在则输出"Find",否则输出"NO Find"。
09.从键盘输入若干个字符(以回车结束输入),若为大写字母则转换为小写,并将结果显示输出。
10.将一个数组中的值按逆序重新存放。
例如:原来顺序为8,6,5,4,1。
要求改为1,4,5,6,8。
11.编写函数prime,判断一个整数是否是素数。
在主函数输入一个数,调用prime函数判断这个数是否是素数,然后在主函数中输出是否为素数的信息。
12.编写一个fun函数:long fun(char s[]),将一个数字字符串转换为一个整数(不得调用标准库函数)。
例如,若输入字符串"9876",则函数把它转换为整数值9876。
13.编写一个fun函数:void fun(long num, char s[]),将一个长整型数据转换为数字串。
14.编写一个求字符串长度的函数,在主函数中输入字符串,并输出其长度(不得调用标准库函数)。
15.编写程序,输出100~200之间的全部素数。
16.编写程序,按每行5个,输出100以内的全部素数。
17.编写程序,在屏幕上显示九九乘法表。
18.编写一个fun函数:void fun(char s[]),将一个字符串中的小写字母转换为大写(不得调用标准库函)。
19.从键盘输入10个整数,按降序排列后输出(要求用自义函数排序)。
20.输入一个3行3列的9个数据,再输出最大元素及所在的行号、列号。
21.试编写一个C程序:输入10个同学的单科成绩,要求按由大到小的顺序输出。
22.从键盘输入一个字符串(<80个字符),删除其中的数字字符。
23.给出一个百分制成绩,要求输出成绩等级
A,B,C,D,E。
90-100分为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
24.从键盘输入一个不多于5位的正整数,要求:①分别打印出每一位数字;②按逆序打印出各位数字,例如原数是987,应输出789。
25.比较两个字符串S1和S2,如果S1>S2,输出1;如果S1=S2,输出0;如果S1<S2,输出-1。
26.试编写一个C程序:将两个字符串S1和S2连接起来,结果保存在S1字符串中;
27.编写一个fun函数void fun(char s1[],char
s2[]),将两个字符串s1和s2连接起来存放在s1中。
28.编写一个函数,输入一个4位数字,要求输出这4个数字字符,但每个字符间空一个格。
29.输入若干个整数,请输出其最大值、最小值和平均值。
要求用函数实现,其中:①最大值函数max();
②最小值函数min();③平均值函数aver()。
30.输入一个百分制的学生成绩,然后把它转换成相应的'A'、'B'、'C'、'D'、'E'五个等级输出。
其中90分以上为'A'、80~89分为'B'、70~79分为'C'、60~69分为'D'、60分以下的为'E'。
31.从键盘上输入10个字符,将其中的小写英文字母转换成大写字母,并将结果显示出来(包括转换和未转换的字符)。
32.编写一个程序,计算一个从键盘输入的整数的各位之和。
33.输入任意多个学生的单科成绩,输出最高分、最低分及平均分(输入负数时结束输入)。
34.从键盘上输入若干个字符,统计其中英文字符、空格字符、数字字符及其他字符的个数,并将统计结果输出。
35.从键盘输入两个字符串str1和str2,并将字符串str2连接到str1的后面,并将结果显示出来。
要求:用数组编程实现;不能使用字符串库函数。
36.编写一个从指定的字符串中删除给定字符的函数delchar。
要求:该函数由main调用。
字符串和需删除的字符从键盘输入,并且在main函数中输出结果。
37.编写一个从指定的字符串中删除全部数字字符的函数deldig。
要求:该函数由main调用,字符串从键盘输入,并且在main函数中输出结果。
38.编写一个fun函数:long fun(char s[]),将一个数字字符串转换为一个整数(不得调用标准库函数,转换仅限于正整数)。
例如,若输入字符串"1234",则
函数把它转换为整数值1234。
39.利用函数和指针编写程序,从键盘输入一个字符串,然后按照下面要求输出一个新字符串。
新串是在原串中,每两个字符之间插入一个空格,如原串为abcd,则新串为a□b□c□d(□为空格)。
40.在主函数中输入整数m,调用函数fun,将所有大于1小于整数m的素数输出。
41.由键盘输入一个文件名,然后输入一串字符(用#结束输入)存入到此文件中,形成文本文件,并将字符的个数写到文件的尾部。
42.从键盘输入若干个整数(输入负数结束),以二进制的方式写到一个名为bi.dat的新文件中。
43.编写程序,从键盘输入一文本文件名,统计并显示文件中元音字母(a,e,i,o,u)出现的次数。
44.编写程序,在屏幕上显示九九乘法表,并将九九乘法表存储在指定文件中,文件名从键盘输入。
45.设计程序求100到200之间的所有素数,并将求得的素数输出到文本文件"E:\test.txt"中。
46.有50个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学号,姓名,三门课成绩),计算出平均成绩,将平均成绩不及格的学生数据保存到A盘根目录下的文件"stud.dat"中。
47.编写一个程序,实现以下功能:由键盘输入一个文件名,然后把从键盘输入的字符依次存放到该文件中,用回车健作为结束输入的标志。
48.编写一个程序,将磁盘中的一个文件复制另一个文件中,文件名从键盘中输入。
49.已知在D盘根目录有一文本文件test.txt,该文件中有七行字符串,编写程序将该文件中的七行字符串显示输出到在屏幕上。
50.编写程序,实现将命令行给定的第一个参数文
本文件连接到命令行给定的第二个参数文本文件(文
本文件中每行字符串的长度不超过80个字符)。
51.从键盘输入一个文本文件名,编程将该文件中的所有小写字母修改为大写字母。
52.从键盘输入若干个正整数(输入负数结束),按降序排列后,将结果保存到D盘根目录中的sort.dat 中。
53.设计程序统计一个文本文件中字母的个数,并将统计结果显示在屏幕上。
54.设计程序统计一个文本文件中字母、数字字符、空格的个数,并将统计结果显示在屏幕上。
55.设计程序,统计文本文件"d:\lx.txt"中字符的个数,并输出个数。
56.建立一个有5个结点的单向链表,每个结点包含姓名、年龄和工资。
编写两个函数,一个用于建立链表,另一个用来输出链表。
57.建立一个有5个结点的单向链表,每个结点包含姓名、年龄。
编写两个函数,一个用于建立链表,另一个用来计算并输出平均年龄。
58.设计程序,输入5名学生的数据,每个学生的数据包括学号、姓名、成绩及名次,要求按成绩降序输出全部学生的数据。
59.设计程序,输入5名职工的数据,每个职工的数据包括姓名、年龄、工资,计算平均工资,并将全部学生的数据保存到文件"d:\student.dat"中。
60.有五个学生,每个学生有三门课的成绩,从键盘上输入学生的学号,姓名,三门课成绩,把它们存放到磁盘文件中,并从该文件中读出显示。