选择题 有以下程序
#include <stdio.h>
main()
{
char ch[]='uvwxyz',*pc;
pc=ch;
printf('%c\n',*(pc+5));}
程序运行后的输出结果是______。
选择题 以下程序用来统计文件中字符的个数(函数feof用以检查文件是否结束,结束时返回非零):
#include <stdio.h>
main()
{ FILE *fp;long num=0;
fp=fopen('fname.dat','r');
while(______){ fgetc(fp);num++;}
printf('num=%d\n',num);
fclose(fp);
}
下面选项中,填入横线处不能得到正确结果的是______。
选择题 面向对象方法中,继承是指______。
选择题 有如下嵌套的if语句:
if(a<b)
if(a<c) k=a;
else k=c;
else
if(b<c) k=b;
else k=c;
以下选项中与上述if语句等价的语句是______。
选择题 若变量已正确定义,在if(W) printf('%d\n',k); 中,以下不可替代W的是______。
选择题 关于程序模块化,以下叙述中错误的是
选择题 若有定义:int a;float b;double c;,程序运行时输入:1,2,3<回车>,能把值1输入给变量a、值2输入给变量b、值3输入给变量C的输入语句是______。
选择题 以下不合法的字符常量是______。
选择题 计算机能直接执行的程序是______。
选择题 有以下程序:
#include<stdio.h>
#include<math.h>
main()
{double x,y,z;
scanf('%lf%lf',x,y);
z=x/y;
while(1)
if(fabs(z)>1.0)
{x=y;y=x;z=x/y;}
else break;
printf('y=%f\n',y);
}
执行时输入:3.6 2.4<回车>,则输出结果是
选择题 设栈的顺序存储空间为S(1:m),初始状态为top=m+1,则栈中的数据元素个数为______。
选择题 有以下程序
#include<stdio.h>
main()
{ int a=1,b=2,c=3,d=0;
if(a==1b++==2)
if(b!=2||c--!=3)
printf('%d,%d,%d\n',a,b,c);
else printf('%d,%d,%d\n',a,b,c);
else printf('%d,%d,%d\n',a,b,c);
}
程序运行后的输出结果是______。
选择题 有以下程序:
#include <stdio.h>
#include 'string.h'
void fun(char *s[],int n)
{
char *t;int i,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strlen(s[i])>strlen(s[j]))
{t=s[i];s[i]=s[j];s[j]=t;}
}
main()
{
char *ss[]={'bcc','bbcc','xy','aaaacc','aabcc'};
fun(ss,5);printf('%s,%s\n',ss[0],ss[4]);
}
程序的运行结果是______。
选择题 有以下程序:
# include <stdio.h>
main()
{ int x=011;
printf('%d\n',++x);
}
程序运行后的输出结果是______。
选择题 已定义变量a为整型,则不能正确表示9<a<14的表达式是______。
选择题 有以下程序:
# include<stdio.h>
main()
{int i,j,m=1;
for(i=1;i<3;i++)
{ for(j=3;j>0;j--)
{ if(i*j>3) break;
m*=i+j;
}
}
printf('m=%d\n',m);
}
程序运行后的输出结果是______。
选择题 有以下程序
#include<stdio.h>
void fun(int a,int b)
{ int t;
t=a; a=b; b=t;
}
main()
{ int c[10]={1,2,3,4,5,6,7,8,9,0),i;
for(i=0;i<10;i+=2)
fun(c[i],c[i+1]);
for(i=0;i<10;i++)
printf('%d,',c[i]);
printf('\n');
}
程序运行后的输出结果是______。
填空题
给定程序中函数fun的功能:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放在形参y所指数组中,在主函数中输出。
例如,有10个正数:46 30 32 40 6 17 45 15 48 26,平均值为30.500000。
主函数中输出:46 32 40 45 48。
请在程序的下划线处填入正确的内容,并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.c中,不得增行或删行,也不得更改程序的结构!
给定源程序如下:
#include stdlib.h
#include stdio.h
#define N 10
double fun(double x[],double *y)
{ int i,j; double av;
/**********found**********/
av=__1__;
/**********found**********/
for(i=0; iN; i++) av = av + __2__;
for(i=j=0; iN; i++)
/**********found**********/
if(x[i]av) y[__3__]= x[i];
y[j]=-1;
return av;
}
main()
{ int i; double x[N] = {46,30,32,40,6,17,45,15,48,26};
double y[N];
for(i=0; iN; i++) printf('%4.0f ',x[i]);
printf('\n');
printf('\nThe average is: %f\n',fun(x,y));
for(i=0; y[i]=0; i++) printf('%5.0f ',y[i]);
printf('\n');
}
填空题 给定程序中,函数fun的功能是:将形参s所指字符串中的所有数字字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。
例如,s所指字符串为:asd123fgh543df,处理后新字符串为:123543asdfghdf。
请在程序的下划线处填入正确的内容,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<ctype.h>
char *fun(char*s)
{int i,j,k,n;char*p,*t;
n=strlen(s)+1;
t=(char*)malloc(n*sizeof(char));
p=(char*)malloc(n*sizeof(char));
j=0;k=0;
for(i=0;i<n;i++)
{if(isdigit(s[i])){
/**********found**********/
p[______]=s[i];j++;}
else
{t[k]=s[i];k++;}
}
/**********found**********/
for(i=0;i<______;i++)
p[j+i]=f[i];
p[j+k]=0;
/**********found**********/
return______;
}
main()
{char s[80];
printf('Please input:');
scanf('%s',s);
printf('\nThe result is;%s\n',fun(s));
}
填空题 请补充main()函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有3位数。
本题的结果为:111 222 333 444 555 666 777 888 999。
注意:部分源程序如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
void main()
{
int a,b,c;
system('CLS');
for(a=1;a<10;a++)
for(b=1;b<10;b++)
for(c=1;c<10;c++)
{
if(______)
printf('%5d',______);
}
}