国家二级(C语言)机试模拟试卷935
程序填空题
1.使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。此程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回1,失败时返回0。在复制的过程中,把复制的内容输出到屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序在文件blank1.c中。
不得增行或删行,也不得更改程序的结构!
#include
#include
int fun(char *source, char *target)
{ FILE *fs,*ft; char ch;
/**********found**********/
if((fs=fopen(source,___1___))==NULL)
return 0;
if((ft=fopen(target, \\
(1)\\
解析:填空1:本题考查对文件操作的掌握。打开一个文件的调用方式是,fs=fopen(文件名使用文件方式),以只读的方式打开文件,所以文件打开方式为\\
程序修改题
2.使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将长整型数中各位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。
例如,当s中的数为87653142时,t中的数:8642。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件modi1.c中。
不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
void fun (long s, long *t)
{ int d;
long sl=1;
*t = 0;
while (s > 0)
{ d = s%10;
/************found************/
if (d%2=0)
{ *t=d* sl+*t;
sl *= 10;
}
/************found************/
s \\\\= 10;
}
}
void main( )
{ long s, t;
printf(\\
(1)if(d%2==0)
(2)s/=10;
解析:本题考查: if语句条件表达式,注意\\
程序设计题
3.使VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,函数fun的功能是:将s所指字符串中除下标为偶数同时ASCII码值也为偶数的字符外,其余的全部删除;字符串中剩余字符所形成的新串放在t所指的数组中。
例如,若s所指字符串中的内容为\\
void fun(char *s,char t[])
{
int i j=0;
for(i=0;s[i]!=’\\\\0’;i++)
if(i%2==0&& s[i]%2==0) /*将s所指字符串中下标和ASCII码值都为偶数的字符放入数组中*/
t[j++]=s[i];
t[j]=’\\\\0’; /*在字符串最后加上结束标识*/
解析:本题考查:循环判断结构;字符串的操作:逻辑运算符的使用。
本文档预览:3600字符,共2009字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载