C语言上机试题库Word文档格式.docx

上传人:b****6 文档编号:17583536 上传时间:2022-12-07 格式:DOCX 页数:42 大小:29.64KB
下载 相关 举报
C语言上机试题库Word文档格式.docx_第1页
第1页 / 共42页
C语言上机试题库Word文档格式.docx_第2页
第2页 / 共42页
C语言上机试题库Word文档格式.docx_第3页
第3页 / 共42页
C语言上机试题库Word文档格式.docx_第4页
第4页 / 共42页
C语言上机试题库Word文档格式.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

C语言上机试题库Word文档格式.docx

《C语言上机试题库Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言上机试题库Word文档格式.docx(42页珍藏版)》请在冰豆网上搜索。

C语言上机试题库Word文档格式.docx

程序输出:

100400700

200500800

300600900

注意:

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

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

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

intfun(intarray[3][3])

{//

inti,j,t;

for(i=0;

for(j=0;

i;

{t=array[i][j];

array[i][j]=array[j][i];

array[j][i]=t;

}

//

intarray[3][3]={{100,200,300},

{400,500,600},

{700,800,900}};

clrscr();

%7d"

array[i][j]);

\n"

);

fun(array);

Convertedarray:

NONO();

NONO()

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

*/

inti,j,array[3][3];

FILE*rf,*wf;

rf=fopen("

b0103.in"

"

r"

);

wf=fopen("

b0103.out"

w"

for(j=0;

fscanf(rf,"

&

array[i][j]);

fprintf(wf,"

array[i][j]);

fclose(rf);

fclose(wf);

/*程序修改题2

将从键盘上输入的每个

单词的第一个字母转换为大写字母,输入时各单词必须用空格隔开,

用'

.'

结束输入。

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

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

程序的结构!

****老王注:

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

****结果正确,则直接给分;

结果不正确或无结果,再一个错

****一个错评分。

此法并不适用所有类似题。

intfun(char*c,intstatus)

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

if(*c=='

'

)return1;

//if(c=='

else

if(status&

&

*c<

='

z'

&

*c>

a'

*c+='

A'

-'

;

//c+='

return0;

intflag=1;

charch;

请输入一字符串,用点号结束输入!

do

ch=getchar();

flag=fun(&

ch,flag);

putchar(ch);

}while(ch!

='

NONO()

chars1[81],ch;

inti,flag=1;

g02.in"

g02.out"

fgets(s1,80,rf);

for(i=0;

strlen(s1);

i++){

ch=s1[i];

flag=fun(&

ch,flag);

s1[i]=ch;

fprintf(wf,"

%s"

s1);

/*G02.IN内容:

keysinindexesallowyouquickaccesstospecificrecordsanddefine

/*G02.OUT内容:

KeysInIndexesAllowYouQuickAccessToSpecificRecordsAndDefine

/*编程题

程序的功能是:

把20个随机数存入一个数组,然后输出该数组

中的最小值。

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

出该函数的定义。

/*老王注:

本题考生可以一字不动,只要按Ctrl+F9运行一下,

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

2分而已!

#defineVSIZE20

intvector[VSIZE];

intfun(intlist[],intsize)

inti,min=0;

for(i=1;

size;

if(list[min]>

list[i])

min=i;

returnmin;

inti;

i

vector[i]=rand();

Vector[%d]=%6d\n"

i,vector[i]);

i=fun(vector,VSIZE);

\nMininum:

Vector[%d]=%6d\n"

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

输出数据,关闭文件。

FILE*fp;

fp=fopen("

b0203.out"

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

程序修改题3

code:

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

/*

计算整数n的阶乘。

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

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

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

程序的结构!

#include"

stdio.h"

doublefun(intn)

doubleresult=1.0;

while(n>

1&

n<

170)

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

result*=n--;

//result*=--n;

returnresult;

//return_____;

intn;

clrscr();

Enteraninteger:

"

n);

\n\n%d!

=%lg\n\n"

n,fun(n));

intn,i;

g03.in"

g03.out"

i<

=10;

n);

fprintf(wf,"

%lg\n"

fun(n));

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

58116153118232937

/*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

  编程题

编写函数fun,函数的功能是:

从字符串中删除指定的字符。

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

若程序执行时输入字符串为:

turbocandborlandc++

从键盘上输入字符:

n,则输出后变为:

turbocadborladc++

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

intfun(chars[],intc)

char*q=s;

for(;

*q;

q++)

if(*q!

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

*s=0;

staticcharstr[]="

turbocandborlandc++"

原始字符串:

%s\n"

str);

输入一个字符:

"

%c"

ch);

fun(str,ch);

str[]=%s\n"

str);

chars[81],ch,w;

intlen;

b0303.in"

b0303.out"

fgets(s,80,rf);

ch);

len=strlen(s)-1;

w=s[len];

if(w=='

\n'

||w==0x1a)s[len]=0;

fun(s,ch);

s);

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

Youcanspecifythattheprimaryindexisinrecordnumbersequence.

t

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

Youcanspecifyhaheprimaryindexisinrecordnumbersequence.

*/

二、2001年9月

*程序修改题13

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

将字符串中的内容按

逆序输出,但不改变字符串中的内容。

例如,若字符串为abcd,则应输出:

dcba。

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

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

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

fun(char*a)

//fun(chara)

{if(*a)

{fun(a+1);

*a);

//printf("

*a);

main()

{chars[10]="

abcd"

处理前字符串=%s\n处理后字符串="

s);

fun(s);

printf("

请编写一个函数fun,它的功能是:

比较两个字符串的长度,

(不得调用C语言提供的求字符串长度的函数),函数返回较长的字

符串。

若两个字符串长度相同,则返回第一个字符串。

例如,输入beijingshanghai(为回车键),

函数将返回shanghai。

部分源程序存在文件PROG1.C文件中。

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

char*fun(char*s,char*t)

char*ss=s,*tt=t;

while((*ss)&

(*tt))

{ss++;

tt++;

if(*tt)return(t);

elsereturn(s);

{chara[20],b[10],*p,*q;

Input1thstring:

gets(a);

Input2thstring:

gets(b);

fun(a,b));

NONO();

NONO()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

FILE*fp,*wf;

inti;

chara[20],b[20];

bc03.in"

"

if(fp==NULL){

数据文件bc03.in不存在!

return;

bc03.out"

10;

fscanf(fp,"

%s%s"

a,b);

fun(a,b));

/*bc03.in内容如下:

alskdffdslkfjds

dksfjfdssdd

jkfdfsdlkfjds

lksdjflksdflkdsjf

lksdjffslkdjf

fsdljfsdlkff

flsdjkfsdklfad

fslkjflsjfslkd

flksjflksdfjknlfksdn

lkjfsfsfsfsd

/*  bc03.out内容应当如下:

fdslkfjds

dksfjf

sdlkfjds

lksdjflksd

fslkdjf

fsdlkff

fsdklfad

flsjfslkd

flksjflksdfjk

fsfsfsd

/*程序修改题49

代码:

--------------------------------------------------------------------------------/*

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

判断两个指针所

指存储单元中的值的符号是否相同;

若相同函数返回1,否则返

回0。

这两个存储单元中的值都不为0。

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

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

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

fun(double*a,double*b)

//fun(double*a,*b)

if(*a**b>

0.0)

//if(a*b>

return1;

elsereturn0;

{doublen,m;

clrscr();

printf("

Entern,m:

scanf("

%lf%lf"

n,&

m);

printf("

\nThevalueoffunctionis:

%d\n"

fun(&

m));

NONO();

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

doublen,m;

gc8.in"

gc8.out"

fscanf(rf,"

fun(&

m));

/*gc8.in内容如下:

-22.99361284.57629812

101.434234-999.888432

-454.78678-987.7856786

67987.7989897878.564564564

-47238.31231287212.212121

-8989.34243457899.9897897

2121.212121-6767.2121298

-4324.5454-32132.3232

899.98983127878.231212

21210.2121-12332.2332

/*正确程序生成的gc8.out内容如下:

0

1

请编一个函数fun(int*a,intn,int*odd,int*even),函

数的功能是分别求出数组中所有奇数之和以及所有偶数之和。

形参n

给出数组中数据的个数;

利用指针odd返回奇数之和,利用指针even

返回偶数之和。

例如:

数组中的值依次为:

1,9,2,3,11,6;

则利用指针

odd返回奇数之和24;

利用指针even返回偶数之和8。

#defineN20

fun(int*a,intn,int*odd,int*even)

*odd=0;

*ev

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1