C语言考试(前五题)

学院比较奇葩,大一下期让学的VB,这学期就要学C++了,然后在开学的前三个周没有课,就由老师讲三个周的C语言,每天9:30~11:30听课,除去放假和双休日,实际听课时间一共是12天*2小时,下午是14:10~5:00,上机,不过每天下午有将近三个小时的上机时间。时间那么紧迫还要考试,今天上午得知考试题是从以下十道题中出,轻松了很多。题如下:

1.计算
,并输出其结果。

2.求出n个学生一门课程中的最高成绩、最低成绩及高于平均成绩的人数。

3.有10个100内的整数,使用选择排序法从大到小排序。

4.有n个考生,每个考生有考号和一个总分成绩,如果录取m人(n>m),确定录取分数线,并输出该分数线上的考生的考号和成绩。

5.用过程实现:求两个正整数的最大公约数。

6.用过程实现:求两个正整数的最小公倍数。

7.用牛顿迭代法求一元方程 x5+2x3-x2+x+1=0在 0 附近的近似值。

8.找出 1000 以内最大的 3 个素数。

9.设计一个具有+、-、*、/、开方、阶乘、指数、正弦、余弦、正切、求余数功能的简易计算器。

10.利用文本编辑软件在外存上建立一个有n个学生的学号、姓名、系别、联系电话的数据文件。从键盘上输入一个学号,可以查寻到此人其他信息。并按姓名排序且输出。

经过一中午和一下午的奋斗,解出了前几道,代码如下:

第一题:

计算
,并输出其结果。

#include<stdio.h>

int mul(int n)

{

int num,i;

num=1;

for(i=1;i<=n;i++)

num=num*i;

return(num);

}

void main()

{

int i,sum=0;

for(i=1;i<=10;i++)

sum+=mul(i);

printf("The sum is %d\n",sum);

}

}

改进:

输入n即可求从1到n的阶乘的和。

#include<stdio.h>

int mul(int n)

{

int num,i;

num=1;

for(i=1;i<=n;i++)

num=num*i;

return(num);

}

void main()

{

int i,n,sum=0;

printf("Enter the number:\n");

scanf("%d",&n);

if(n<=0)

printf("Error\n");

else

{

for(i=1;i<=n;i++)

sum+=mul(i);

printf("The sum is %d\n",sum);

}

}

第二题:

求出n个学生一门课程中的最高成绩、最低成绩及高于平均成绩的人数。

#include<stdio.h>

int sort(int a[],int n)

{

int i,j,temp;

for(i=0;i<n;i++)

{

for(j=0;j<=n-i-1;j++)

{

if(a[j]<a[j+1])

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

}

}

}

void main()

{

int i,k,sum=0,ave,n=4,a[5];//假设题中n=5,即有5名学生

for(i=0;i<=n;i++)

{

printf("Please enter number %d\n",i);

scanf("%d",&a[i]);

sum+=a[i];

}

sort(a,n);

printf("max is %d\n",a[0]);

printf("min is %d\n",a[n]);

ave=sum/n;

for(k=0;k<=n&&a[k]>ave;)

k++;

printf("%d\n",k);

}

第三题:

有10个100内的整数,使用选择排序法从大到小排序。

#include<stdio.h>

int sort(int a[],int n)

{

int i,j,temp;

int min;

for(i=1;i<=n;i++)

{

min=i;

for(j=0;j<=n;j++)

{

if(a[j]<a[min])

{

min=j;

}

if(min!=i)

{

temp=a[j];

a[j]=a[min];

a[min]=temp;

}

}

}

}

void main()

{

int i,k,n=9,a[10];

for(i=0;i<=n;i++)

{

printf("Please enter number(<100) %d\n",i);

scanf("%d",&a[i]);

// if(a[k]<0||a[k]>100)

// goto end;

}

sort(a,n);

for(k=0;k<=n;k++)

printf("%4d",a[k]);

printf("\n");

//end:printf("Error\n");

}

第四题:

有n个考生,每个考生有考号和一个总分成绩,如果录取m人(n>m),确定录取分数线,并输出该分数线上的考生的考号和成绩。

#include<stdio.h>

int sort(int a[],int n)

{

int i,j,temp;

for(i=0;i<n;i++)

{

for(j=0;j<=n-i-1;j++)

{

if(a[j]<a[j+1])

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

}

}

}

void main()

{

int i,m,n=4,a[5];//假设题中n=5,即有5名学生

for(i=0;i<=n;i++)

{

printf("Please enter number %d\n",i);

scanf("%d",&a[i]);

}

sort(a,n);

printf("Please enter number m \n");

scanf("%d",&m);

for(i=0;i<m;i++)

printf("考号和成绩分别是%d %d\n",i,a[i]);

}

第五题:

用过程实现:求两个正整数的最大公约数。

#include<stdio.h>

void main(){

int a,b;

int min,max,tmp;

printf("Enter tne number a b:\n");

scanf("%d%d",&a,&b);

a>b?(max=a,min=b):(max=b,min=a);

while(tmp=(max%min))

{

max=min;

min=tmp;

}

printf("GCF is %d\n",min);

}

?
?

*****************************************未完待续***********************************************

?
?

时间: 2024-12-17 04:25:39

C语言考试(前五题)的相关文章

C语言考试解答十题

学院比较奇葩,大一下期让学的VB,这学期就要学C++了,然后在开学的前三个周没有课,就由老师讲三个周的C语言,每天9:30~11:30听课,除去放假和双休日,实际听课时间一共是12天*2小时,下午是14:10~5:00,上机,不过每天下午有将近三个小时的上机时间.时间那么紧迫还要考试,今天上午得知考试题是从以下十道题中出,轻松了很多.题如下: 1.计算 ,并输出其结果. 2.求出n个学生一门课程中的最高成绩.最低成绩及高于平均成绩的人数. 3.有10个100内的整数,使用选择排序法从大到小排序.

考试第五题

package test05; import java.text.SimpleDateFormat; import java.util.Date; public class Demo implements Runnable{ @Override public void run() { // TODO Auto-generated method stub Date date = new Date(); SimpleDateFormat simpleDateFormat = new SimpleDa

中国MOOC_零基础学Java语言_期末考试的编程题_1二进制的前导的零

期末考试的编程题 返回 这是期末考试的编程题,在60分钟内,你可以多次提交,直到正确为止. 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 二进制的前导的零(10分) 题目内容: 计算机内部用二进制来表达所有的值.一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000.可以看到,从左边数过来,在第一个1之前,有27

2016上半年网络工程师考试上午真题(1-26)

2016年上半年网络工程师考试真题是备战下半年网络工程师考试的最佳资料,下面希赛软考学院为您整理了上午试题,供您参考学习. 2016年上半年网络工程师考试上午真题(1-26) ●内存按字节编址,从A1000H到B13FFH的区域的存储容量为(1)KB. A.32 B.34 C.65 D.67 ●以下关于总线的叙述中,不正确的是(2). A.并行总线适合近距离高速数据传输 B.串行总线适合长距离数据传输 C.单总线结构在一个总线上适应不同种类的设备,设计简单且性能很高 D.专用总线在设计上可以与连

rhcsa考证试题分析(一天更新五题)

rhsca考试时间:2.5小时  满分300分210分及格 当时我考的是300分(虽然很简单但是我还是高兴) 第一题 破解redhat7 密码 按e 输入 rd.break 再接着 ctrl + x mount -o remount,rw /sysroot chroot /sysroot passwd root touch /.autorelabel exit reboot 第二题 查看主机名 修改主机名. 第三题 修改网卡配置文件 第四题 配置yum仓库 第五题 配置selinux

2016年上半年信息系统管理工程师考试上午真题(2)

通过信息系统管理工程师考试并获得证书的人员,能聘任对应技术岗位,能评中级职称.下面希赛软考学院为您整理了2016年上半年信息系统管理工程师上午真题,助准备参加考试的你一臂之力. 2016年上半年信息系统管理工程师考试上午真题(26-50题) ●SNMP属于OSI/RM的(26)协议. A.管理层 B.应用层 C.传输层 D.网络层 ●下面4个主机地址中属于网络220.115.200.0/21的地址是(27). A.220.115.198.0 B.220.115.206.0 C.220.115.2

2016年上半年信息系统管理工程师考试上午真题(3)

通过信息系统管理工程师考试并获得证书的人员,能聘任对应技术岗位,能评中级职称.下面希赛软考学院为您整理了2016年上半年信息系统管理工程师上午真题,助准备参加考试的你一臂之力. 2016年上半年信息系统管理工程师考试上午真题(51-75题) ●以下与程序设计风格无关的是(51). A.代码的正确性 B.标识符的命名 C.代码中的注释 D.代码的布局格式 ●完整的软件测试需要经过(52). A.白盒测试.黑盒测试两个步骤 B.人工测试.机器测试两个步骤 C.静态测试.动态测试两个步骤 D.单元测试

2016年上半年信息系统监理师考试上午真题(上)

参加软考的信息系统监理师考试且成绩合格是申请信息系统监理工程师初始登记的基本要求之一,要想获得信息系统监理工程师证书,就必须参加考试.下面希赛软考学院为您整理了2016年上半年信息系统监理师考试上午真题,助您考试一臂之力. 2016年上半年信息系统监理师考试上午真题(1-25题) ●大数据具有"volume"."variety"."value"."velocity"等特点,其中"volume"是指(1).

2016年上半年信息系统监理师考试上午真题(中)

参加软考的信息系统监理师考试且成绩合格是申请信息系统监理工程师初始登记的基本要求之一,要想获得信息系统监理工程师证书,就必须参加考试.下面希赛软考学院为您整理了2016年上半年信息系统监理师考试上午真题,助您考试一臂之力. 2016年上半年信息系统监理师考试上午真题(26-50题) ●需求分析说明书不能作为(26). A.可行性研究的依据 B.用户和开发人员之间的约定 C.系统概要设计的依据 D.软件验收测试的依据 ●数据流程图(DataFlowDiagram,DFD/DataFlowChart