国家二级(C语言)机试模拟试卷911
程序填空题
1.使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M个字符串,且串长小于N。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意部分源程序在文件blank1.c中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#define M 5
#define N 20
int fun(char (*ss)[N], int *n)
{ int i, k=0, len= N;
/**********found**********/
for(i=0; i<___1___; i++)
{ len=strlen(ss[i]);
if(i==0) *n=len;
/**********found**********/
if(len ___2___ *n)
{ *n=len;
k=i;
}
}
/**********found**********/
return(___3___);
}
void main( )
{ char ss[M][N]={\\
(1)M (2)< (3)k
解析:for循环语句 的循环条件; if语句条件表达式; return语句完成函数值的返回。
程序修改题
2.使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其它字符不变。
例如,若输入\\
(1)if(tt[i]>=’a’)&&(tt[i]<=’z’))
(2)tt[i]-=32;
解析:本题考查: if语句条件表达式;小写字母转大写字母的方法。
程序设计题
3.使VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。
例如,若输入17,则应输出: 4 6 8 9 10 12 14 15 16。
注意:部分源程序在文件prog1.c中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
void fun(int m, int *k, int xx[])
{
}
void main( )
{
int m, n, zz[100];
void NONO ( );
printf(\\
void fun(int m,int *k int xx[])
{
int i,j.n=0;
for(i=4;i<m;i++) /*找出大于1小于整数m的非素数*/
{
for(j=2;j<i;j++)
if(i%j==0) break;
ifj≤i) xx[n++]=i;
}
*k=n;/*返回非素数的个数*/
解析:本题考查:如何判断非素数;循环判断结构;数组的引用。
本文档预览:3600字符,共2011字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载