2002上半年C上机题之一

// 程序修改题

/*

给定程序MODI1.C中函数fun的功能是:

先从键盘上输入一个3行3列矩阵的各个元素的值,

然后输出主对角线元素之和。

请改正函数 fun

中的错误或在横线处填上适当的内容并把横线删除,使它能得出正确的结果。

注意: 不要改动 main 函数,不得增行或删行,也不得更改程序

的结构!

*/

#include

int fun()

{

int a[3][3],sum;

int i,j;

/*********found**********/

sum=0;

//______;

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

{ for (j=0; j < 3; j++)

/*********found**********/

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

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

}

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

sum=sum+a[ i ][ i ];

printf("Sum=%d\n",sum);

}

main()

{

fun();

}

// 编程题

/*

编写程序, 实现矩阵(3行3列)的转置(即行列互换)

例如, 输入下面的矩阵:

100 200 300

400 500 600

700 800 900

程序输出:

100 400 700

200 500 800

300 600 900

注意: 部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun

的花括号中填入你编写的若干语句。

*/

#include

#include

int fun(int array[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; }

//

}

main()

{

int i,j;

int array[3][3]={{100,200,300},

{400,500,600},

{700,800,900}};

clrscr() ;

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

{ for (j=0; j < 3; j++)

printf("%7d",array[i][j]);

printf("\n");

}

fun(array);

printf("Converted array:\n");

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

{ for (j=0; j < 3; j++)

printf("%7d",array[i][j]);

printf("\n");

}

NONO();

}

NONO()

{

/* 请在此函数内打开文件,输入测试数据,调用 fun

函数,输出数据,关闭文件。 */

int i,j, array[3][3];

FILE *rf, *wf ;

rf = fopen("b0103.in", "r") ;

wf = fopen("b0103.out", "w") ;

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

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

fscanf(rf, "%d", &array[i][j]);

fun(array);

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

{ for (j=0; j < 3; j++)

fprintf(wf, "%7d", array[i][j]);

fprintf(wf, "\n");

}

fclose(rf) ;

fclose(wf) ;

}

-----------------------------------------------------------

2002上半年C上机题之二

/*

程序修改题

给定程序MODI1.C中函数fun的功能是: 将从键盘上输入的每个

单词的第一个字母转换为大写字母,

输入时各单词必须用空格隔开,

用'.'结束输入。

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

注意:不要改动 main 函数, 不得增行或删行,也不得更改

程序的结构!

****老王注:本类有输出结果的程序修改题,在评分时先看结果,如果

**** 结果正确,则直接给分;结果不正确或无结果,再一个错

**** 一个错评分。此法并不适用所有类似题。

*/

#include

int fun(char *c,int status)

{

/***********found**********/

if (*c==' ') return 1;

//if (c==' ') return 1;

else

{

if(status && *c <= 'z' && *c >=

'a')

/***********found**********/

*c += 'A' - 'a';

//c += 'A' - 'a';

return 0;

}

}

main()

{

int flag=1;

char ch;

printf("请输入一字符串,用点号结束输入!\n") ;

do

{

ch=getchar();

flag=fun(&ch, flag);

putchar(ch);

}while(ch!='.');

printf("\n");

NONO();

}

NONO( )

{

/* 请在此函数内打开文件,输入测试数据,调用 fun

函数,输出数据,关闭文件。 */

char s1[81], ch;

int i, flag = 1;

FILE *rf, *wf ;

rf = fopen("g02.in", "r") ;

wf = fopen("g02.out", "w") ;

fgets(s1, 80, rf) ;

for(i = 0 ; i < strlen(s1) ; i++) {

ch = s1[i] ;

flag = fun(&ch, flag) ;

s1[i] = ch ;

}

fprintf( wf,"%s", s1 );

fclose(rf) ;

fclose(wf) ;

}

/* G02.IN 内容:

keys in indexes allow you quick access to specific records and

define

*/

/* G02.OUT 内容:

Keys In Indexes Allow You Quick Access To Specific Records And

Define

*/

/* 编程题

程序的功能是: 把20个随机数存入一个数组, 然后输出该数组

中的最小值。其中确定最小值的下标的操作在fun函数中实现,请给

出该函数的定义。

注意: 部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun

的花括号中填入你编写的若干语句。

*/

/* 老王注:本题考生可以一字不动,只要按 Ctrl+F9

运行一下,

即可得 38 分,费去 m牛n虎之力正确编程,不过多得

2 分而已!

*/

#include

#include

#define VSIZE 20

int vector[VSIZE] ;

int fun(int list[],int size)

{//

int i,min=0;

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

if(list[min]>list[i])

min=i;

return min;

//

}

main()

{

int i;

clrscr() ;

for (i=0;i

{

vector[i]=rand();

printf("Vector[%d]=%6d\n",i,vector[i]);

}

i=fun(vector,VSIZE);

printf("\nMininum: Vector[%d]=%6d\n",i,vector[i]);

NONO();

}

NONO()

/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,

输出数据,关闭文件。 */

{

int i;

FILE *fp ;

fp = fopen("b0203.out", "w") ;

for (i=0;i

i=fun(vector,VSIZE);

fprintf(fp, "%d\n", vector[i]) ;

fclose(fp) ;

}

/* b0203.out 内容:

346

130

10982

1090

11656

7117

17595

6415

22948

31126

9004

14558

3571

22879

18492

1360

5412

26721

22463

25047

130

*/

------------------------------------------------------------------

2002上半年C上机题之三

程序修改题

code:--------------------------------------------------------------------------------

/*

给定程序MODI1.C中函数fun的功能是: 计算整数n的阶乘。

请改正程序中的错误或在横线处填上适当的内容并把横线删除,

使它能计算出正确的结果。

注意: 不要改动 main 函数, 不得增行或删行, 也不得更改

程序的结构!

*/

#include "stdio.h"

double fun(int n)

{

double result=1.0;

while (n>1 && n<170)

/*********found*********/

result*=n--;

//result*=--n;

/*********found*********/

return result;

//return _____;

}

main()

{

int n;

clrscr();

printf("Enter an integer: ");

scanf("%d",&n);

printf("\n\n%d!=%lg\n\n",n,fun(n));

NONO();

}

NONO( )

{

/* 请在此函数内打开文件,输入测试数据,调用 fun

函数,输出数据,关闭文件。 */

int n,i;

FILE *rf, *wf ;

rf = fopen("g03.in", "r") ;

wf = fopen("g03.out", "w") ;

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

fscanf(rf, "%d", &n) ;

fprintf( wf, "%lg\n", fun ( n ) );

}

fclose(rf) ;

fclose(wf) ;

}

--------------------------------------------------------------------------------

/* g03.in 文件内容如下:

5 8 11 6 15 31 18 23 29 37

*/

/* g03.out 文件内容如下:

120

40320

3.99168e+07

720

1.30767e+12

8.22284e+33

6.40237e+15

2.5852e+22

8.84176e+30

1.37638e+43

*/

编程题

code:--------------------------------------------------------------------------------

/*

编写函数fun,函数的功能是: 从字符串中删除指定的字符。同

一字母的大、小写按不同字符处理。

若程序执行时输入字符串为: turbo c and borland c++

从键盘上输入字符:n, 则输出后变为: turbo c ad borlad c++

如果输入的字符在字符串中不存在, 则字符串照原样输出。

注意: 部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun

的花括号中填入你编写的若干语句。

*/

#include

#include

int fun(char s[],int c)

{//

char *q=s;

for(; *q; q++)

if(*q != c) *(s++)=*q;

*s=0;

//

}

main()

{

static char str[]="turbo c and borland c++";

char ch;

clrscr() ;

printf("原始字符串:%s\n", str);

printf("输入一个字符:");

scanf("%c",&ch);

fun(str,ch);

printf("str[]=%s\n",str);

NONO();

}

NONO()

{

/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,

输出数据,关闭文件。 */

FILE *rf, *wf ;

char s[81], ch, w ;

int len ;

rf = fopen("b0303.in", "r") ;

wf = fopen("b0303.out", "w") ;

fgets(s, 80, rf) ;

fscanf(rf, "%c", &ch) ;

len = strlen(s) - 1 ;

w = s[len] ;

if(w == '\n' || w == 0x1a) s[len] = 0 ;

fun(s, ch) ;

fprintf(wf, "%s", s) ;

fclose(rf) ;

fclose(wf) ;

}

--------------------------------------------------------------------------------

/* b0303.in 文件内容如下:

You can specify that the primary index is in record number

sequence.

t

*/

/* b0303.out 文件内容如下:

You can specify ha he primary index is in record number

sequence.

*/

计算机的编程发源地,计算机编程: C典型上机试题相关推荐

  1. 全国计算机等级考试汇编,2011年3月汇编全国计算机等级考试(南开100题三级网络技术上机试题汇编)...

    <2011年3月汇编全国计算机等级考试(南开100题三级网络技术上机试题汇编)>由会员分享,可在线阅读,更多相关<2011年3月汇编全国计算机等级考试(南开100题三级网络技术上机试 ...

  2. access团员人数公式_2012年计算机二级Access第三十二套上机试题及答案详解

    1.基本操作题 (1)在考生文件夹下"samp1.mdb"数据库文件中建立表"tTeacher",表结构如下: (2)设置"编号"字段为主键 ...

  3. 用汇编语言编程的计算机

    用汇编语言编程的计算机 下面介绍一种通过汇编语言进行编程的计算机.该计算机通过按键输入汇编语言程序,通过数字电路判断汇编语句的因果关系,并实现相关保存到寄存器,像端口输出信号,从端口读取信号的功能.计 ...

  4. 可编程计算机控制器课设,可编程计算机控制器课程设计(电气)

    [可编程计算机控制器课程设计] [Programmable  Computer  Controller] 一.基本信息 课程代码:[099582] 课程学分:[1] 面向专业:[电气工程及其自动化] ...

  5. 【计算机基础知识】三大编程思想

    1.面向过程编程 "面向过程"(Procedure Oriented)是一种以过程为中心的编程思想.这些都是以什么正在发生为目标进行编程,不同于面向对象的是谁在受影响.与面向对象明 ...

  6. 互联网Scratch编程趣味课:不插电编程和计算机对话[图]

    2019独角兽企业重金招聘Python工程师标准>>> 互联网Scratch编程趣味课:不插电编程和计算机对话[图]: 过去的一周,冉爸和一家棒球夏令营合作,给一群无拘无束的小帅哥带 ...

  7. 二级c语言编程题只要得出答案,计算机二级C语言考试编程题题库答案.docx

    计算机二级C语言考试编程题题库答案 1.求100之内自然数中最大的能被17整除的数.void main(){ int i;for(i=100;i>0;i--)if(i%17==0)break;p ...

  8. 基础知识:语言、编程、计算机组成、cpu、存储器

    阅读目录 一. 语言:一种事物与另外一种事物沟通的介质. 编程语言:程序员与计算机沟通的介质. 编程:把要让计算机做的事用一种编程语言表达出来. 为何要编程? 为了让计算机按照人类的思维逻辑去工作,从 ...

  9. 学计算机和电脑办公的区别,自学编程和计算机科班出身的差别在哪?

    自学编程和科班出身的差别最大的在于学习的主体--人 但毫无例外的是,当两者之间相辅相成之时所能发挥的力量更大. 自学编程和计算机科班出身的差别在哪? 不同人的不同看法 看到一段好的产品,科班出身的会问 ...

最新文章

  1. TCP为什么需要三次握手和四次挥手
  2. java writeboolean_Java DataOutputStream writeBoolean()方法(带示例)
  3. Android企业级程序完全退出的解决方案
  4. android 如何使用aar,Android Studio如何使用aar依赖包?
  5. 连接redis的方法
  6. 真正想创业,做一番事业的人是什么样子的?
  7. python3编译成exe运行_python3.x的程序如何打包成exe可执行文件
  8. 在Apache中隐藏Php文件后缀
  9. git优点缺点(简单介绍)
  10. 强制打开BIOS中禁用的I/OAT DCA(二)
  11. 清华大学829考研 初试436经验谈
  12. 无模型matlab程序实验报告,MATLAB仿真瑞利衰落信道实验报告结果
  13. 如何测试计算机u口速度慢,如何解决电脑USB接口识别U盘速度缓慢
  14. 【机器学习笔记】【决策树】【分类树】
  15. 什么是网页源代码和网站的源代码
  16. linux系统中如何查ip,在Linux系统中查看ip的命令是什么
  17. 计算机网络(二)集线器_网桥交换机_路由器
  18. 家具行业APP定制开发需具备哪些功能
  19. VS2022 MAUI Hello World——Windows平台及Android平台效果
  20. 比较器(Comparable与Comparator接口)

热门文章

  1. 算法导论-线性时间排序习题解
  2. 1小时教你学会正则表达式
  3. MogDB/openGauss 故障排查思路
  4. 2020即将过去,数据库最好的时代已经到来!
  5. Oracle 20c 新特性:原生的 JSON 数据类型(Native JSON Datatype)
  6. Spark 开源新特性:Catalyst 优化流程裁剪
  7. 如何给MindSpore添加一个新的硬件后端?快速构建测试环境!
  8. LiteOS内核源码分析:消息队列Queue
  9. 你的数仓函数结果不稳定,可能是属性指定错了
  10. [技术分享]【DLI跨源】当DLI遇见MongoDB