文档库 最新最全的文档下载
当前位置:文档库 › C题库

C题库

C题库
C题库

【程序设计】

功能:根据整型形参m,计算如下公式的值:y=sin(m)*10。【参考代码】

double y=0;

y=sin(m)*10;

return(y);

功能:若x、y为奇数,求x到y之间的奇数和;若x、y为偶数,则求x到y之间的偶数和。

【参考代码】

int i,s=0;

for(i=x;i<=y;i+=2)

s=s+i;

return s;

功能:编写程序,实现矩阵(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; }

功能:求一个四位数的各位数字的立方和。

【参考代码】

int d,s=0;

while (n>0)

{d=n%10;

s+=d*d*d;

n/=10;

}

return s;

功能:请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。二维

数组中的数已在主函数中赋予。

【参考代码】

int i,j;

for(j=0;j

{

pp[j]=tt[0][j];

for(i=1;i

if(tt[i][j]

pp[j]=tt[i][j];

}

功能:求一组数中大于平均值的数的个数。

【参考代码】

int i,k=0;

float s=0,ave;

for(i=0;i

s+=a[i];

ave=s/n;

printf("%f ",ave);

for(i=0;i

if(a[i]>ave)k++;

return k;

题目:分别统计字符串中字母、数字、空格和其他字符出现的次数(字符长度小于80)。

【参考代码】

int i;

for(i=0;c[i]!='\0';i++) if((c[i]>='A'&&c[i]<='Z')||(c[i]>='a'&&c[i]<='z')) a=a+1;

else if (c[i]>='0'&&c[i]<='9')

num=num+1;

else if (c[i]==' ')

b=b+1;

else

other=other+1;

功能:能计算从1开始到n的自然数中偶数的平方和,n由

键盘输入,并在main()函数中输出。

【参考代码】

int sum,i;

sum =0;

for(i=2;i<=n;i=i+2)

{

sum=sum+i*i;}

return(sum);

功能:求一批数中小于平均值的数的个数。

【参考代码】

int i,sum=0,k=0;

double average;

for(i=0;i

sum=sum+a[i];

average=sum*1.0/n;

for(i=0;i

if(average>a[i]) k++;

return(k);

功能:求出二维数组周边元素之和,作为函数值返回。二维数组的值在主函数中赋予。

【参考代码】

int s=0;

int i,j;

for(i=0;i

s=s+a[i][0]+a[i][N-1];

for(j=1;j

s=s+a[0][j]+a[M-1][j];

return s;

功能:将主函数中输入的字符串反序存放。

【参考代码】

int i,j;

char c;

for(i=0,j=n-1;i

/*或者for(i=0,j=n-1;i

{c=*(str+i);

*(str+i)=*(str+j);

*(str+j)=c;

}

功能:求一批数中最大值和最小值的差。

【参考代码】

int i,max,min;

max=min=a[0];

for(i=1;i

if(a[i]>max) max=a[i];

else if(a[i]

return(max-min);

功能:用do-while语句求1~100的累计和。

【参考代码】

int i =1, sum =0;

do

{

sum = sum + i;

i++;

}

while ( i <= n );

return sum;

功能:对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。

【参考代码】

int i,j;

char t;

for(i=1;i

for(j=i+1;j

if(s[i]

{ t=s[i];s[i]=s[j];s[j]=t;}

功能:编写函数fun(str,i,n),从字符串str中删除第i个字符开始的连续n个字符(注意:str[0]代表字符串

的第一个字符)。

【参考代码】

while(str[i+n-1])

{

str[i-1]=str[i+n-1];

i++;

}

str[i-1]='\0';

功能:用函数求N个[10,60]上的整数中能被5整除的最大的数,如存在则返回这个最大值,如果不存在则

返回0。

【参考代码】

int i;

for(i=0;i

if(arr[i]%5==0 && arr[i]>m)

m=arr[i];

功能:判断整数x是否是同构数。若是同构数,函数返回1;

否则返回0。x的值由主函数从键盘读入,要求不大

于100。

【参考代码】

int k;

k=x*x;

if((k%10==x)||(k%100==x))

return 1;

else

return 0;

功能:编写函数判断一个整数m的各位数字之和能否被7整除,可以被7整除则返回1,否则返回0。调用该函数找出

100~200之间满足条件的所有数。

【参考代码】

int k,s=0;

do

{s=s+m%10;

m=m/10;

}while(m!=0);

if(s%7==0)k=1;

else k=0;

return(k);

功能:编写函数fun对主程序中用户输入的具有10

个数据的数组a按由大到小排序,并在主程序中输出

排序结果。

【参考代码】

int k,j,t;

for (k=0;k

for (j=k+1;j

if (array[k]

{

t=array[k];

array[k]=array[j];

array[j]=t;

}

功能:将两个两位数的正整数a、b合并形成一个整数放在 c中。合并的方式是:将a数的十位和个位数依次放在c数的百位和个位上, b数的十位和个位数依次放

在c数的十位和千位上。

【参考代码】

*c=a/10*100+a%10+b/10*10+b%10*1000;

功能:用函数将第2个串连接到第1个串之后,不允许使用

strcat函数。

【参考代码】

int i,j;

for(i=0;c1[i]!='\0';i++);

for(j=0;c2[j]!='\0';j++)

c1[i+j]=c2[j];

c1[i+j]='\0';

功能:产生20个[30,120]上的随机整数放入二维数组

a[5][4]中, 求其中的最小值。

【参考代码】

int i,j,s;

s=a[0][0];

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

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

if(s>a[i][j])s=a[i][j];

return(s);

功能:编写函数fun计算下列分段函数的值:

【参考代码】

float y;

if (x<0 && x!=-3.0)

y=x*x+x+6;

else if(x>=0 && x<10.0 && x!=2.0 && x!=3.0)

y=x*x-5*x+6;

else y=x*x-x-1;

return y;

功能:根据整型形参m,计算如下公式的值:

y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5)

【参考代码】

double y=0;

int i;

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

{y+=1.0/(i+5); }

return(y);

功能:对某一正数的值保留2位小数,并对第三位进行四舍五入。

【参考代码】

int i;

i=(int)(h*1000)%10;

if(i>=5)

return(int)(h*100+1)/100.0;

else

return(int)(h*100)/100.0;

功能:找出一批正整数中的最大的偶数。

【参考代码】

int i,amax=-1;

for(i=0;i

if(a[i]%2==0)

if (a[i]>amax) amax=a[i];

return amax;

功能:编写函数fun求s=1^k+2^k +3^k + ......+N^k的值,(1的K次方到N的K次方的累加和)。

【参考代码】

long power,sum=0;

int i,j;

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

{ power=i;

for(j=1;j

power *= i;

sum += power;

}

return sum;

功能:求一个n位自然数的各位数字的积。(n 是小于10的自然数)

【参考代码】

long d,s=1;

while (n>0)

{d=n%10;

s*=d;

n/=10;

}

return s;

功能:对任意输入的 x,用下式计算并输出 y 的值。【参考代码】

int m;

if(n<0)

m=-1;

else

if(n==0) m=0;

else m=1;

return m;

功能:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出主对角线元素的积,并在fun()

函数中输出。

【参考代码】

int sum;

int i,j;

sum=1;

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

sum=sum*a[i][i];

return sum;

功能:从键盘上输入任意实数,求出其所对应的函数值。【参考代码】

double z;

if(x>10) z=exp(x);

else if(x>-3) z=log(x+3);

else z=sin(x)/(cos(x)+4);

return(z);

功能:求x到y之间的奇数和(包括x和y)。

【参考代码】

int i,s=0;

for(i=x;i<=y;i++)

if(i%2!=0) s=s+i;

return s;

功能:编写函数求3!+6!+9!+12!+15!+18!+21!。

【参考代码】

int i,j;

float t,s=0;

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

{t=1;

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

t=t*j;

s=s+t;}

return(s);

功能:删除所有值为y的元素。数组元素中的值和y的值由主函数通过键盘输入。

【参考代码】

int i,j;

for(i=0;i<*n;)

{

if(bb[i]==y)

{for(j=i;j<*n;j++)

bb[j]=bb[j+1];

*n=*n-1;

}

else

i++;

}

功能:统计出若干个学生的平均成绩、最高分以及得最高分的人数。

【参考代码】

int i;float sum=0,ave;

max=array[0];

for(i=0;i

{ if(max

sum=sum+array [i]; }

ave=sum/n;

for(i=0;i

if(array [i]==max) j++;

return(ave);

功能:编写函数fun将一个由四个数字组成的字符串转换

为每两个数字间有一个空格的形式输出。

【参考代码】

int i,len;

len=strlen(s);

for(i=len-1;i>0;i--)

{ s[2*i]=s[i];

s[2*i-1]=' ';

}

len=strlen(s);

s[len]='\0';

功能:把20个随机数存入一个数组,然后输出该数组中的最小值。其中确定最小值的下标的操作在fun函数中

实现,请给出该函数的定义。

【参考代码】

int i,min=0;

for(i=1; i

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

min=i;

return min;

功能:调用函数fun判断一个三位数是否是"水仙花数"。

在main函数中从键盘输入一个三位数,并输

出判断结果。请编写fun函数。

【参考代码】

int bw,sw,gw;

bw=n/100;sw=(n-bw*100)/10;gw=n%10;

if(n==bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1;

else return 0;

功能:找出一个大于给定整数且紧随这个整数的素数,并

作为函数值返回。

【参考代码】

for(i=n+1;;i++){

for(k=2;k

if(i%k==0)

break;

if(k==i)

return(i);

}

功能:编写程序求无理数e的值并输出。计算公式为:

e=1+1/1!+1/2!+1/3!+......+1/n!

【参考代码】

long int j;

int i,k;

double e,jc;

i=1;

e=0.0;

jc=1.0;

while(jc>=0.000001)

{

e=e+jc;

j=1;

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

j=j*k;

jc=1.0/j;

i++;

}

return e;

功能:求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面

的一个)。

【参考代码】

int max,i,j;

max=array [0][0];

Row=0;

Col=0;

for(i=0;i

{for(j=0;j

if(max

{max=array [i][j];

Row=i;

}

return(max);

功能:能计算从1开始到n的自然数的和,n由键盘输入,并在main()函数中输出。

【参考代码】

int sum,i;

sum =0;

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

{sum=sum+i;}

return(sum);

功能:实现两个整数的交换。

【参考代码】

int t;

t=*a;*a=*b;*b=t;

功能:从低位开始取出长整型变量s中偶数位上的数,依次构成一个新数放在t中。

【参考代码】

long sl=10;

s /= 10;

t = s % 10;

while(s > 0)

{ s = s/100;

t = s%10*sl + t;

sl = sl * 10;

}

功能:产生20个[30,120]上的随机整数放入二维数组a[5][4] 中,求每行元素的和。

【参考代码】

int i,j;

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

{ b[i]=0;

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

b[i]=b[i]+a[i][j];

}

功能:编写函数sum(int m,int n),求出m~n之间(包括m和n,m

【参考代码】

int i,s=0;

for(i=m;i<=n;i++)

if(i%3==0&&i%5==0)

s=s+i;

return s;

功能:从字符串s中删除指定的字符c。

【参考代码】

int i,k=0;

for(i=0;s[i]!='\0';i++)

if(s[i]!=c) s[k++]=s[i];

s[k]='\0';

功能:计算并输出给定整数的所有因子之积(包括自身)。

规定这个整数的值不大于50。

【参考代码】

long s=1,i;

for(i=2;i<=n;i++)

if(n%i==0)s=s*i;

return s;

题目:用函数求一个N阶方阵右下三角元素的和(包括副

对角线上的元素)。

【参考代码】

int i,j,k=0;

for(i=0;i

for(j=N-1-i;j

k=k+a[i][j];

return(k);

功能:编写函数求3!+6!+9!+12!+15!+18!+21!。

【参考代码】

int i,j;

float t,s=0;

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

{t=1;

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

t=t*j;

s=s+t;}

return(s);

功能:编写函数求表达式的和(n的值由主函数输入)。

1-1/2+1/3-1/4+......+1/m

【参考代码】

float s=0;

int i,k=1;

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

{ s=s+k*1.0/i;

k=-k;

}

return(s);

功能:求1到w之间的奇数之和。(w是大于等于100小于等

于1000的整数)

【参考代码】

long y=0;

int i;

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

if(i%2==1)y+=i;

return y;

功能:从键盘上输入任意实数x,求出其所对应的函数值。

【参考代码】

float z;

if(x>4) z=sqrt(x-4);

else if(x>-4) z=pow(x,8);

else if(x>-10) z=4/(x*(x+1));

else z=fabs(x)+20;

return(z);

【程序改错】

题目:输入一个字符串,将其第一个字符和最后一个字符互换。【参考答案】

1.scanf("%s",s1);

2.s1[0]=s1[i-1];

3.s1[i-1]=ch;

题目:定义一个N×N的二维数组,并在键盘给数组元素赋值。

请编写程序使数组右上半三角元素中的值全部置成0。

并以矩阵形式输出该数组,

【参考答案】

1.#define N 4

2. for(j=i;j

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

4. fun(a);

功能:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行

【参考答案】

1.upfst(char *p)

2.for ( ; *p; p++ )

3.else if ( *p != ' ' )

功能:用下面的和式求圆周率的近似值。直到最后一项的绝对值

小于等于0.0001。

【参考答案】

1.#include "math.h"

2. float s=0,t=1,p=1;

3. while(fabs(t)>1e-4)

4.printf("pi=%f\n",s*4);

功能:给定n个实数,输出平均值,并统计在平均值以下(含平均值)的实数个数。

【参考答案】

1.float xa=0;

2.for(j=0;j

3.for(j=0;j

4.return c;

题目:任意输入一个字符,如果是数字字符,则输出相应的数字,是*号输出它的ASCII码值;否则,原样输出。

【参考答案】

1.if(ch>='0' && ch<='9')

2.printf("%d\n",ch-'0');

3.else if(ch=='*')

4.else printf("%c\n",ch);

功能:八进制转换为十进制。

【参考答案】

1.char *p,s[6];

2.n=0;

3.while(*(p)!='\0')

题目:输入0-9之间的数字字符,以#为结束(输入数字字符时不要用任何间隔。) 求数字字符的字面值的平均值。

【参考答案】

1.sum+=x-'0';

2.while(x!='#') ;

3.printf("\n%f",sum/n);

题目:求出数组中的最大、最小元素值以及所有元素的均值。

程序中共有4条错误语句,请改正错误。

【参考答案】

1.float max,min;

2.max=min=sum=array[0];

3.return(sum/n);

4.scanf("%f",&score[i]);

功能:一个5位数,判断它是不是回文数。即12321是回文数,个

位与万位相同,十位与千位相同。

【参考答案】

1.long ge,shi,qian,wan,x;

2.wan=x/10000;

3.if (ge==wan&&shi==qian)

功能:编写一个函数,该函数可以统计一个长度为3的字符串在另

一个字符串中出现的次数。

【参考答案】

1.int i,n=0;

2.for(i=0;i<=strlen(str)-3;i++)

3.n++;

功能:编程序求一维数组中的最大和最小的元素值.

【参考答案】

1.int maxmin(int arr[ ],int n)

2.max=min=arr[0];

3.if(arr[i]>max) max=arr[i];

4.min=maxmin(array,N);

功能:统计出若干个学生的平均成绩,最低分以及得最低分的人数。

【参考答案】

1.sum+=array[i];

2.ave=sum/n;

3.if(array[i]==Min) J++;

题目:以下函数功能,完成字符串的复制。

【参考答案】

1.p1=str;

2.char a[20],*p=a;

功能:用冒泡法对10个整数从小到大排序。

【参考答案】

1.void sort(int *x,int n)

2.for(j=0;j

3.if(x[j+1]

4.sort(a,n);

功能:计算正整数num的各位上的数字之积。

【参考答案】

1.long k=1;

2.num=num/10;

3.scanf("%ld",&n);

4.printf("\n%ld\n",fun(n));

题目:下列给定程序中,函数fun的功能是:判断字符ch是否与str所指串中的某个字符相同;若有相同,统计此字符出现的次数。

【参考答案】

1.int fun(char str[], char ch)

2.int i=0,n=0;

3.if(str[i]==ch)

功能:将一个数字字符串转换为一个整数(不得调用C语言提供的

将字符串转换为整数的函数)。

【参考答案】

1.if(*p=='-')

2.return n*i;

3.n = fun(s);

功能:从键盘输入十个学生的成绩,统计最高分,最低分和平均分。

max代表最高分,min代表最低分,avg代表平均分。

【参考答案】

1.float a[10],min,max,avg;

2.scanf("%f",&a[i]);

3.max=min=avg=a[0];

4.if (min>a[i])

题目:从键盘输入一个整数给m,求表达式y=1-1/2*2-1/3*3-1/4*4-…….-1/m*m为止。【参考答案】

1.double fun(int m)

3.y-=1.0/(i*i);

题目:输出fibonacci数列前20项中所有数组元素项中奇数之和。

已知前两项的值分别为1,1。

【参考答案】

1.sum=fun(a);

2.for(i=2;i<20;i++)

3.if(a[i]%2==1)

4.return sum;

功能:用下面的和式求圆周率的近似值。

1.#include "math.h"

2. float s=0,t=1,p=1;

3. while(fabs(t)>1e-4)

4. printf("pi=%f\n",s*4);

功能:用指针作函数参数,编程序求一维数组中的最大和最小的元素值.

【参考答案】

1.void maxmin(int arr[ ],int *pt1,int *pt2,int n)

2.*pt1=*pt2=arr[0];

3.if(arr[i]>*pt1) *pt1=arr[i];

4.p1=&a;p2=&b;

功能:编写函数fun求1000以内所有8的倍数之和。

【参考答案】

1.int s=0,i;

2.for(i=1;i

3.if(i%m==0)

4.

功能:给一个不多于5位的正整数,要求:

一、求它是几位数,

二、逆序打印出各位数字。

【参考答案】

1.long a,b,c,d,e,x;

2.b=x%10000/1000;

3.if (a!=0)

功能:找出大于m的最小素数,并将其作为函数值返回。

【参考答案】

1.for(k=2;k

2.if(i%k==0) break;

4.return i;

题目:任意输入一个字符,如果是小写字母以大写字母输出,

是大写字母以小写字母输出;否则,按原样输出。

【参考答案】

1.ch=getchar();

2.if(ch>=97&&ch<=122)

3.else if(ch>='A'&&ch<='Z')

4.else putchar(ch);

功能:使3*3数组左下三角元素中的值乘以n(包含主对角线)。

【参考答案】

1.int i,j;

2.for(j=0; j<=i; j++)

3.a[i][j]*=n;

功能:编写函数fun求20以内所有5的倍数之积。

【参考答案】

1.int s=1,i;

2.if(i%m==0)

3.s=s*i

功能:用下面的公式求圆周率的近似值。直到最后一项的绝对值小于等于0.0001。【参考答案】

1.#include "math.h"

2.float s=0,t=1,p=1;

3.while(fabs(t)>1e-4)

4.printf("pi=%f\n",s*4);

功能:将字符串s中最后一次出现的子字符串t1替换成字符串t2,

所形成的新串放在w所指的数组中,在此处,要求t1和t2

所指字符串的长度相同。

【参考答案】

1.while (*w)

2.if (*r==*p)

3.if (*r=='\0') a=w;

4.*a=*r;

题目:输入一个字符串,输出其中的小写字符。

【参考答案】

1.putchar(p[i]);

2.n=strlen(str);

3.

功能:在一个已按升序排列的数组中插入一个数,插入后,数

组元素仍按升序排列。

【参考答案】

1.scanf("%d",&number);

2.for(i=N-2;i>=0;i--)

3.a[i+1]=a[i];

4.break;

题目:定义一个4×4的二维数组b,数组元素的值由键盘输入,

输出其中的最大值及所在的行、列下标。

【参考答案】

1.int fun(int b[4][4]);

2.scanf("%d",&b[i][j]);

3.int i,j,max=b[0][0];

4.if(max

功能:根据以下公式求π值,并作为函数值返回。

【参考答案】

1.while(t>eps)

2.t=t*n/(2*n+1);

3.return 2*s;

题目:下列给定程序中函数 fun 的功能是 : 将字符串中的内容按逆序输出 , 但不改变宇符串中的内容。

【参考答案】

1.void fun (char *a)

2.while(i>=0 )

3.printf("%c",a[i]);

功能:一球从100米高度自由落下,每次落地后反跳回原高度的

一半;再落下,求它在第10次落地时,共经过多少米?

第10次反弹多高?

【参考答案】

1.float sn=100.0,hn=sn/2;

2.for(n=2;n<=10;n++)

3.hn=hn/2;

功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的

字符按正序连接到t串的后面。

【参考答案】

1.int i,ss;

2.t[i] = s[ss-i-1];

3.t[2*ss]='\0';

C试题库

2000~2001学年《程序设计基础-C》试卷 一、单项选择题(每小题 2 分,共 30 分) 1. C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。 A、‘{‘ 和’}’ B、‘[‘和’]’ C、“/*”和”*/” D、“*/”和”/*” 2.下列运算符中,优先级最低的是_____。 A、* B、!= C、+ D、= 3.若变量已正确定义,表达式 (j=3, j++) 的值是_____ 。 A、3 B、 4 C、5 D、0 4.已知字符‘a’ 的ASCII码为 97 ,执行下列语句的输出是_____。 printf ("%d, %c", ’b’, ’b’+1 ) ; A、98, b B、语句不合法 C、98, 99 D、 98, c 5.表达式strcmp(“box”, “boss”) 的值是一个_______。 A、正数 B、负数 C、 0 D、不确定的数 6.数组定义为 int a[3][2]={1, 2, 3, 4, 5, 6},数组元素_____的值为6。 A、a[3][2] B、a[2][1] C、a[1][2] D、a[2][3] 7.要调用数学函数时,在#include命令行中应包含_____。 A、”stdio.h” B、”string.h” C、”math.h” D、”ctype.h” 8.判断i和j至少有一个值为非0的表达式是_____。 A、 i!=0 && j!=0 B、i*j!=0 C、!(i==0 || j==0) D、i&&j 9.若a是基本整型变量,c是单精度实型变量,输入语句______是错误的。 A、scanf(”%d,%f”, &a, &c); B、scanf(”d=%d, c=%f”, &a, &c); C、scanf(”%d%f”, &a, &c); D、scanf(”%d%f”, a, c); 10.若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于_____。 A、p++ B、x++ C、*(p++) D、&x++ 11.若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x, _____是正 确的。 A、p2=p1; B、p2=**p1; C、p2=&p1; D、p2=*p1; 12.下列程序段的输出是_____。 int c[]={1, 3, 5}; int *k=c+1; printf("%d", *++k); A、 3 B、 5 C、 4 D、6 13.不正确的赋值或赋初值的方式是______。 A、char str[]="string"; B、char str[7]={'s', 't', 'r', 'i', 'n', 'g'}; C、char str[10];str="string"; D、char str[7]={'s', 't', 'r', 'i', 'n', 'g', ’\0’}; 14.对于以下结构定义,++p->str中的++加在_____。 s truct { int len;

2019年电大C语言考试题库(c语言小题+编程)

C语言程序设计课程期末复习练习 一、单选题 1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为( )。 A. main B. MAIN C. name D. function 2.每个C语言程序文件的编译错误分为()类。 A. 1 B. 2 C. 3 D. 4 3. 字符串"a+b=12\n"的长度为()。 A. 6 B. 7 C. 8 D. 9 4. 在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为()语句。 A. for B. if C. do D. while 5. 在下面的do-while循环语句中,其循环体语句被执行的次数为()。 int i=0; do i++; while(i<10); A. 4 B. 3 C. 5 D. 10 6. 将两个字符串连接起来组成一个字符串时,选用的函数为()。 A. strlen() B. strcap() C. strcat() D. strcmp() 7. 若用数组名作为函数调用的实参,传递给形参的是()。 A. 数组的首地址 B. 数组中第一个元素的值 C. 数组中全部元素的值 D. 数组元素的个数 8. 假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大( )个字节。 A. 4 B. 8 C. 16 D. 32 9. 假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p指向s所指向的字符串,则p应定义为()。 A. char *p=s; B. char *p=&s; C. char *p;p=*s; D. char *p; p=&s; 10. 从一个数据文件中读入以换行符结束的一行字符串的函数为()。 A. gets() B. fgets() C. getc() D. fgetc() 11. 由C语言目标文件连接而成的可执行文件的缺省扩展名为( )。 A. cpp B. exe C. obj D. c 12. 设有两条语句为“int a=12; a+=a*a;”,则执行结束后,a的值为( )。 A. 12 B. 144 C. 156 D. 288 13. 带有随机函数调用的表达式rand()%20的值在( )区间内。 A. 1~19 B. 1~20 C. 0~19 D. 0~20 14. for循环语句“for(i=0; i

C语言题库

C语言基本概念 能将高级语言编写的源程序转换成目标程序的是______。 A) 编辑程序B) 编译程序C) 解释程序D) 链接程序 您的答案为:B 参考答案为:B 以下选项中合法的用户标识符是______。 A) long B) _2Test C) 3Dmax D) A.dat 您的答案为:B 参考答案为:B 以下叙述正确的是 A) 可以把define和if定义为用户标识符 B) 可以把define定义为用户标识符,但不能把if定义为用户标识符 C) 可以把if定义为用户标识符,但不能把define定义为用户标识符 D) define和if都不能定义为用户标识符 您的答案为:D 参考答案为:B 以下叙述正确的是 A) C语言比其他语言高级 B) C语言可以不用编译就能被计算机识别执行 C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D) C语言出现的最晚、具有其他语言的一切优点 您的答案为:C 参考答案为:C 在一个C语言程序中 A) main函数必须出现在所有函数之前 B) main函数必须出现在所有函数之后 C) main函数可以在任何地方出现 D) main函数必须出现在固定位置 您的答案为:C 参考答案为:C 一个C语言程序是由_______组成的。 A) 一个主程序和若干子程序 B) 若干子程序 C) 函数 D) 若干过程您的答案为:C 参考答案为:C 以下叙述中正确的是() A) C语言的源程序不必通过编译就可以直接运行 B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令 C) C源程序经编译形成的二进制代码可以直接运行 D) C语言中的函数不可以单独进行编译 您的答案为:B 参考答案为:B 下列关于C语言用户标识符的叙述中正确的是

C语言试题库(完整版)

C语言试题库 一、单项选择 第一章 C语言概述 (1)一个C程序的执行是从 A、本程序的MAIN函数开始,到MAIN 函数结束。 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C、本程序的MAIN函数开始,到本程序的最后一个函数结束。 D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。(2)以下叙述正确的是 A、在C程序中,MAIN函数必须位于程序的最前面。 B、 C程序的每行中只能写一条语句。 C、 C语言本身没有输入输出语句。 D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误。(3) C语言规定,在一个源程序中,MAIN主函数的位置是在: A、必须在最前面。 B、必须在系统调用的库函数的后面 C、可以在任意位置。

D、必须在最后面 (4)一个C程序是由: A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 (5)以下叙述不正确的是: A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个MAIN函数 C、 C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 第二章数据类型、运算符与表达式 (1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为x=( i=4, j=16, k=32) A、4 B、16 C、32

D、52 (2)下列四组选项中,均不是C语言键字的选项是 A、define , IF, type B、getc, char, printf C、include, scanf, case E、 if, struct, type (3)下面四个选项中,均是不合法的用户标识符的选项是A、A,P_0,do B、float,1a0, _A C、b-a, goto, int D、_123, temp, INT (4)若有代数式3ae/bc,则正确的C语言表达式是A、a/b/c*e*3 B、3*a*e/bc C、3*a*e/b*c D、a*e/c/b*3 (5)已知各变量的类型说明如下:

大学c语言考试题库含答案

================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。int a=10; printf("%d",a++); A、11 和10 B、11 和11 C、10 和11 D、10 和10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B

能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0;

C试题库有答案的

C++试题库 一、选择题 1、求“abc\\12\n”字符串的长度( C ) (A) 5 (B) 6 (C) 7 (D) 8 2、字符串常量”\tMyNane\103”的长度是:( B ) (A) 6 (B) 8 (C) 12 (D) 14 3、设x=7,执行语句y=++x,则y等于( D ) (A) 6 (B) 7 (C) 9 (D) 8 4、下列字符列中,合法的长整型常量是:( D ) (A) 4.18e3 (B) 0.46793 (C) 4L (D) 956738 5、在C++中,char类型数据在内存的存储形式是:( D ) (A) 原码(B) 反码(C) 补码(D) ASCII码 6、以下运算符中,优先级最高的是:( B ) (A) *= (B) –> (C) && (D) >= 7、若有定义“int x”,则下面不能将x的值强制转换成双精度数的表达式(D )(A)(double)x (B) double(x)(C)(double)(x)(D)x(double) 8、设有变量定义 int i, j; 与表达式 i==0 && j==0 等价的表达式是:( b ) (A) i||j (B) !i&&!j (C) !i==!j (D) i==j 9、下述叙述正确的是()。 (A)字符型变量不能赋予整数(B) 任意整数都能表示字符 (C)字符型变量可存放多个字符(D) 字符数据的值是整数值 10、设变量int a = 5; 下列哪个表达式计算后,使得变量b的值等于2 ?( A ) (A) b=a/2 (B) b=6-(a--) (C) b=a%2 (D) b=a>3?3:2 11、if…else中为避免嵌套出现二义性,C++规定else子句总与( B ) (A)其之前最近的if语句 (B)其之前最近且尚未配对的if语句 (C)缩排位置相同的if语句 (D)其之后最近的if语句 12、逻辑运算符两侧运算对象的数据( D ) (A)只能是逻辑型数据(B)只能是整型数据 (C)只能是整型或字符型数据(D)可以是任何类型的数据

历年全国计算机二级C语言试题库完整

. . . . 参考 50道C 语言知识题 1.以下叙述中正确的是 A)用C 程序实现的算法必须要有输入和输出操作 B)用C 程序实现的算法可以没有输出但必须要有输入 C)用C 程序实现的算法可以没有输入但必须要有输出 D)用C 程序实现的算法可以既没有输入也没有输出 2.下列可用于C 语言用户标识符的一组是 A)void,define,WORDB)a3_3,_123,Car C)For,-abc,IFCaseD)2a,DO,sizeof 3.以下选项中可作为C 语言合法常量的是 A)-80B)-080C)-8e1.0D)-80.0e 4.若有语句:char*line[5];,以下叙述中正确的是 A)定义line 是一个数组,每个数组元素是一个基类型为char 为指针变量 B)定义line 是一个指针变量,该变量可以指向一个长度为5的字符型数组 C)定义line 是一个指针数组,语句中的*号称为间址运算符 D)定义line 是一个指向字符型函数的指针 5.以下定义语句中正确的是 A)inta=b=0;B)charA=65+1,b=′b′; 6.有以下程序段 charch;intk; ch=′a′; k=12; printf("%c,%d,",ch,ch,k);printf("k=%d\n",k); 已知字符a 的ASCII 码值为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 7.有以下程序 main() {inti,s=1; for(i=1;i<50;i++) if(!(i%5)&&!(i%3))s+=i; printf("%d\n",s);} 程序的输出结果是 A)409B)277C)1D)91 8.当变量c 的值不为2、4、6时,值也为"真"的表达式是 A)(c==2)||(c==4)||(c==6) B)(c>=2&&c<=6)||(c!=3)||(c!=5) C)(c>=2&&c<=6)&&!(c%2) D)(c>=2&&c<=6)&&(c%2!=1) 9.若变量已正确定义,有以下程序段

C语言题库

C语言题库 1.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写, 则文件方式字符串应是(D)。 A、"rb+" B、"ab++" C、"ab" D、"wb+" 2.设有如下定义: struct sk {int a; float b;} data,*p; 若要使p指向data中的a域,正确的赋值语句是(C)。 A、p=(struct sk*) data.a; B、*p=data.a; C、p=&data.a; D、p=&data,a; 3.对结构体类型的变量的成员的访问,无论数据类型如何都可使用 的运算符是(B)。 A、& B、. C、* D、-> 4.下列关于指针定义的描述,错误的是(A)。 A、指针是一种变量,该变量用来存放某个变量的值 B、指针是一种变量,该变量用来存放某个变量的地址值 C、指针变量的类型与它所指向的变量类型一致 D、指针变量的命名规则与标识符相同 5.设有如下的程序段: char str[ ]="Hello"; char *ptr; ptr=str; 执行完上面的程序段后,*(ptr+5)的值为(D ). A、不确定的值 B、'o'的地址 C、'o' D、'\0' 6.若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是(D)。 A、&t[1] B、t[3] C、&t[3][2] D、t[2] 7.下列说法中正确的是(B ). A、函数调用不占运行时间,只占编译时间. B、宏替换不占运行时间,只占编译时间. C、有参数的宏定义,就是函数. D、在定义宏时,宏名与带参数的括弧之间可以加空格. 8.以下叙述中正确的是(C)。

C语言试题库(带答案解析)~排版

一、选择题 1、以下不能定义为用户标识符的是( )。 (A) MAIN (B) _HJ (D) LINE1 2、以下不能定义为用户标识符的是( ) (A) If (B) H_J (D) LINE12 3、下面属于C 语言标识符的是( )。 (A) 2ab (B) @f (C) b 4、下列符号中用来表示C 语言中的回车换行的是( )。 (A) \r (C) \b (D) \t 5、在计算机系统中,可执行程序是( ) (A) 源代码 (B)汇编语言代码 (D) ASCII 码 6、在Visual C++ 环境下,C 源程序文件名的默认后缀是( )。 (A) .obj (B) .txt (D) .doc 7、Microsoft Visual C++ 中,C 语言可执行程序的扩展名是:( ) (B) obj (C) c 或cpp (D) txt 8、C 程序由( )组成。 (A)子程序 (B) 主程序和子程序 (D) 过程 9、C 程序的基本组成单位( )。 (A) 数据类型 (B) 变量和常量 (D) 表达式 10、C 语言中主函数的个数是( )。 (A) 2个 (C) 任意个 (D) 10个 11、一个 C 程序的执行是从( ) (B)本程序文件的第一个函数开始,到本程序文件最后一个函数结束. (C)本程序文件的第一个函数开始,到本程序main 函数结束. (D) 本程序的main()函数开始,到本程序文件的最后一个函数结束. 12、以下叙述正确的是 (A)在C 语言程序中,main 函数必须放在其他函数的最前面 (C)在C 语言程序中,只有main 函数才可单独进行编译 (D)每个后缀为.C 的C 语言源程序都应该包含一个main 函数 13、设变量a 是整型,b 是实型,c 是双精度型,则表达式2+’a’+b*c 值的数据类型是( )。 (A) int (B) float 14、以下选项中表示一个合法的常量是(说明:符号□表示空格) A) 9□9□9 C) D) 15、以下选项中非法的字符常量是 A)'\102' B)'\65' C)'\xff' 16、以下选项中,能表示逻辑值“假”的是 A)1 B) D) 17、下列关系表达式中,结果为“假”的是 A)(3+4)>6 C) 3<=4||3 D)(3<4)==1 18、关于C 语言变量,以下说法不正确的是( ) (A) 变量名由程序员定义,必须符合标识符的命名规则。 (B) 变量是程序运行过程中其值可以改变的量。 (D) 变量命名时应尽量做到见名知意。 19、关于C 语言中数的表示,以下叙述正确的是 B)只要在在允许范围内整型和实型都能精确表示 C)只有实型数在允许范围内能精确无误的表示,整型数会有误差 D)只有八进制表示的数在不会有误差 20、设有语句int a=3;,则执行了语句a+=a=a*a;后,变量a 的值是 。 A .3 B .0 C .9 21、在C 语言中,要求运算数必须是整型的运算符是 。 B ./ C .< D .! 22、C 语言中最简单的数据类型包括 。 A .整型、实型、逻辑型 C .整型、字符型、逻辑型 D .整型、实型、逻辑型、字符型 23 、在C 语言中,合法的字符型常量是 。 B ."A" C .65 D .A 24、若已定义x 和y 为double 型变量,则表达式x=1 ,y=x+3/2的值是 。 A .1 B .2 D . 25、设正x 、y 均为整型变量,且x=10,y=3,则以下语句的输出结果是 。 printf("%d,%d\n",x--,--y); A .10,3 B .9,3 C .9,2 26、若有定义int a=8,b=5,C;,执行语句C=a/b+;后,C 的值为 。 A . C . D .2 27、以下选项中,不正确的赋值语句是 。 A .++t; B .n1=(n2=(n3=0)); C .k=i==j; 28、设x 和y 均为 int 型变量,则语句:x+=y,y=x-y;x-=y;的功能是 。 A .把x 和y 按从大到小的顺序排列 B .把x 和y 按从小到大的顺序排列 C .无确定结果 29、以下程序的输出结果是 。 #include <> main() { char c='z'; printf("%c",c-25); } B .Z C .z-25 D .y 30、已知字母A 的ASCII 码为十进制数的65,以下程序的输出结果是 。 #include <> main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); B .B,C C .C,D D .不确定的值 31、若k 是int 型变量,则以下程序片段的输出结果是 。 k=-3; if(k<=0) printf("####"); printf("&&&&"); B .&&&& C .####&&&& D .有语法错误,无输出结果 32、关于以下程序,说法正确的是 。 #include <> main()

(完整版)C语言考试题库之判断题(2)

三、判断题(10道小题,共10分) 1、C 语言具有简洁明了的特点。(1分) 正确 2、预处理命令的前面必须加一个“#”号。(1分) 正确 3、标准格式输入函数scanf()可以从键盘上接收不同数据类型的数据项。(1分) 正确 4、在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。(1 分) 正确 5、continue 不是结束本次循环,而是终止整个循环的执行。(1分) 错误 6、在对数组全部元素赋初值时,不可以省略行数,但能省略列数(1分) 错误 7、.函数的实参传递到形参有两种方式值传递和地址传递(1分) 正确 8、直接访问就是直接利用变量的地址进行存取直接访问(1分) 正确 9、共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。(1分) 正确 10、文件指针和位置指针都是随着文件的读写操作在不断改变。(1分) 错误 11、C 语言标准格式输入函数scanf() 的参数表中要使用变量的地址值。(1分) 正确 12、浮点型常量的指数表示中,e 是可以省略的。(1分) 错误 13、任何表达式语句都是表达式加分号组成的。(1分) 正确 14、在switch语句中,每一个的case常量表达式的值可以相同。(1分) 错误 15、do-while循环的while后的分号可以省略。(1分) 错误 16、用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志'\0'。正确 17、C语言函数返回类型的默认定义类型是void(1分) 错误 18、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数(1分) 正确 19、枚举类型中的元素都具有一个整型值。(1分) 正确 20、C 语言是一种具有某些低级语言特征的高级语言。(1分) 正确 21、case语句后如没有break,顺序向下执行。(1分)正确

c题库

假定 AB 引用是某个变量的别名,对引用的操作就是对被引用变量的操作。 ?A. 对 ?B. 错 假定 AB 为一个类,则执行 AB x; 语句时将自动调用该类的无参构造函数。 ?A. 对 ?B. 错 构造函数用来初始化类的新对象,构造函数与类同名,返回类型只能为void。 ?A. 对 ?B. 错 用new动态分配的内存是在堆中分配的,而不是在栈中分配的。 ?A. 对 ?B. 错 使用关键字class定义的类中缺省的访问权限是私有(private)的。 ?A. 对 ?B. 错 在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。 ?A. 对 ?B. 错 C++语言的标识符是不区分大小写的。 ?A. 对 ?B. 错 作用域运算符(::)只能用来限定成员函数所属的类。 ?A. 对 ?B. 错 声明对象时,类名前面不需要加class关键字。 ?A. 对 ?B. 错

C++程序一般应当含有main函数,它是C++程序执行的入口。 ?A. 对 ?B. 错 可以在类的构造函数中对静态数据成员进行初始化。 ?A. 对 ?B. 错 C++语言中,既允许单继承,又允许多继承。 ?A. 对 ?B. 错 派生类的继承方式有两种:公有继承和私有继承。 ?A. 对 ?B. 错 多继承情况下,派生类的构造函数的执行顺序取决于定义派生类时所指定的各基类的顺序。 ?A. 对 ?B. 错 类的私有成员只能被类中的成员函数访问,任何类以外的函数对它们的访问都是非法的。 ?A. 对 ?B. 错 构造函数和析构函数都不能重载。 ?A. 对 ?B. 错 在基类中被声明为虚函数的类的成员函数必须在每个派生类中显式声明为虚函数,才能具有多态的特征。 ?A. 对 ?B. 错 关于运算符重载,运算符函数的返回类型不能声明为基本数据类型。 ?A. 对

C语言程序的设计试题库完整

一、选择题(每题1分,共20分) 1.C语言程序从main()函数开始执行,所以这个函数要写在(D )。 A.程序文件的开始B.程序文件的最后 C.它所调用的函数的前面D.程序文件的任何位置 2.下列方法中错误的是(D )。 A.主函数可以分为两个部分:主函数说明部分和主函数体。 B.主函数可以调用任何非主函数的其它函数。 C.任何非主函数可以调用其它任何非主函数。 D.程序可以从任何非主函数开始执行。 3.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 4.C语言中的简单数据类型包括(D )。 A.整型、实型、逻辑型B.整型、实型、逻辑型、字符型 C.整型、字符型、逻辑型D.整型、实型、字符型 5.下列可以正确表示字符型常量的是(A )。 A.’\t’B.”a”C.”\n”D.297 6.在C语言中,字符型数据所占的内存空间是(C )。 A.2个字节B.4字节C.1字节D.由用户自定义 7.若int类型数据占2个字节,则unsigned int类型数据的取值范围是(B )。 A.0~255 B.0~65535 C.-32768~32767 D.-256~255 8.若有以下类型说明语句:char a;int b; float c; double d; 则表达式a*b+d-c的结果类型为(D )。 A.float B.char C.int D.double 9.下列正确的预编译命令是(D )。 A.define PI 3.14159 B.#define P(a,b)=strcpy(a,b) C.#define stdio.h D.#define PI 3.14159 10.为表示逻辑表达式7979 )&&( X<90 ) B.( X>79 )!=( X<90 ) C.7979 )||( X<90 ) 11.设有语句“int a=2,b=3,c=-2,d=2;”,则逻辑表达式“a>0&&b&&c<0&&d>0”的值是(A )。 A.1 B.0 C.-1 D.出错

c 试题及答案

一、单项选择题 1、下列哪个类型的对象是在非连接模式下处理数据内容的主要对象(D ) A. Command B. Connection C. DataAdapter D. DataSet 2、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型, 如果类型省略,则定义为( A )。 A. int B. sbyte C. uint D. ulong 3、创建数据库连接使用的对象是( A )。 A. Connection B. Command C. DataReader D. DataSet 4、C#中导入某一命名空间的关键字是( A )。 A. using B. use D. include 5、一般情况下,异常类存放在什么命名空间中( B )。 A. 生成异常类所在的命名空间 B. 命名空间 C. 命名空间 D. System命名空间 6、若将数据库中的数据填充到数据集,应调用SqlDataAdapter的( C )方 法。 A. Open B. Close C. Fill D. Update 7、若将数据集中所作更改更新回数据库,应调用SqlAdapter的(A )方法。 A. Update B. Close C. Fill D. Open 8、在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( A ) 成员,来指定操作系统打开一个现有文件并把文件读写指针定位在 文件尾部。 A. Append B. Create C. CreateNew D. Truncate 9、在菜单项File中,为将F设为助记符,应将该菜单项的Text属性设置为 (B )。 A. @File B.&File C. %File 10、指定操作系统读取文件方式中的FileMode .Create的含义是( D)。 A. 打开现有文件 B. 指定操作系统应创建文件,如果文件存在,将出现异常 C. 打开现有文件,若文件不存在,出现异常 D. 指定操作系统应创建文件,如果文件存在,将被改写 11、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型,如果类型省略,则定义为( D )。 A. uint B. sbyte C. ulong D. int 12、当运行程序时,系统自动执行启动窗体的( C )事件。 A. Click C. Load D. Activated 13、若要使命令按钮不可操作,要对( B )属性进行设置。 A. Visible B. Enabled C. BackColor D. Text

(完整版)C语言程序设计选择题库及答案

单项选择题 导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。对于掌握不准的问题, 应该通过上机实验来检验。 【1.1】以下不正确的C语言标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 【1.2】以下是正确的C语言标识符是____。 A) #define B) _123 C) %d D) \n 【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。 ??? A) print B) i\am C) Pxq D) str_l ??? _3d one_half My->book Cpp ??? oodb start$it line# pow ??? aBc 3pai His.age while

【1.4】下面各选项组中,均是C语言关键字的组是。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 【1.5】下列不属于C语言关键字的是。A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始B) 程序文件的最后 C) 它所调用的函数的前面D) 程序文件的任何位置 【1.7】下列关于C语言的叙述错误的是____ A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中 C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义

大学C语言考试题库及答案

精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 大学C语言考试题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题库吧。加油! 一单项选择题库 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C )。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

C语言考试题库之判断题[1]_共5页

三、判断题(10道小题,共10分) 1、c语言具有简洁明了的特点。 正确 2、预处理命令的前面必须加一个“#”号。正确 3、标准格式输入函数seanf()可以从键盘上接收不同数据类型的数据项。 正确 4、在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{} 括起来组成一个复合语句。 正确 5、continue不是结束本次循环,而是终止整个循环的执行。 错误 6、在对数组全部元素赋初值时,不可以省略行数,但能省略列数 错误 7、.函数的实参传递到形参有两种方式值传递和地址传递 正确 8、直接访问就是直接利用变量的地址进行存取直接访问 正确 9、共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。 正确 10、文件指针和位置指针都是随着文件的读写操作在不断改变。 错误 11、C语言标准格式输入函数scanfO的参数表中要使用变量的地址值。 正确 12、浮点型常量的指数表示中,6是可以省略的。 错误 13、任何表达式语句都是表达式加分号组成的。 正确 14、在switch语句中,每一个的case常量表达式的值可以相同。 错误 15、do-while循环的while后的分号可以省略。 错误 16、用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志'\0'。 正确 17、C语言函数返回类型的默认定义类型是void( 错误 18、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数正确 19、枚举类型中的元素都具有一个整型值。 正确 20、C语言是一种具有某些低级语言特征的高级语言。 正确 21、c ase语句后如没有break,顺序向下执行。正确 22、d o-while循环至少要执行一次循环语句。正确

c语言上机题库 (1)

1、给定n 个数据, 求最小值出现的位置(如果最小值 出现多次,求出第一次出现的位置即可)。 2、编写程序求无理数e 的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+......+1/n! 当1/n!<0.000001时e=2.718282。 3、求一批数中最大值和最小值的积。 4、某一正数的值保留2位小数,对第三位进行四舍 五入。 5、从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x 的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10) z=|x|+20(其他) 6、求出N ×M 整型数组的最大元素及其所在的行坐标 及列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。 例如:输入的数组为: 1 2 3 4 15 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。 7、求一个n 位自然数的各位数字的积。(n 是小于10的 自然数) 8、计算n 门课程的平均值,计算结果作为函数值返回。 例如:若有5门课程的成绩是:92,76,69,58,88, 则函数的值为76.599998。 9、求一批数中小于平均值的数的个数。 10、编写函数判断一个整数m 的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。

11、请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列 中最大元素,并依次放入pp所指一维数组中。二维 数组中的数已在主函数中赋予。 12、编写函数fun用比较法对主程序中用户输入的具有10 个数据的数组a按由大到小排序,并在主程序中输出 排序结果。 13、编写main程序调用函数fact求解从m个元素选n 个元 素的组合数的个数。计算公式是:组合数=m!/(n!.(m-n)!)。 要求:m不能小于n,否则应有容错处理。 说明:函数fact(x)的功能是求x!。 14、找出一批正整数中的最大的偶数。 15、实现两个整数的交换。 例如:给a和b分别输入:60和65,输入为: a=65 b=60 16、将字符串中的小写字母转换为对应的大写字母, 其它字符不变。 17、求一个四位数的各位数字的立方和。 18、求一组数中大于平均值的数的个数。 例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。 19、对任意输入的x,用下式计算并输出y 的值。 5 x<10 y= 0 x=10 -5 x>10 20、求给定正整数m以内的素数之和。 例如:当m=20时,函数值为77。 21、判断整数x是否是同构数。若是同构数,函数返回1; 否则返回0。x的值由主函数从键盘读入,要求不大

C语言试题库(带详细讲解答案)

一单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)

6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D 中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3) 9.C语言中的简单数据类型包括(D)。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是C。 A)2.5 B)2 C)1 D)3 详见教材P52~53. %为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1;5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1; /为求商运算符,该运算符能够对整型、字符、浮点等类型的数据进行运算,5/2=2 11.如果int a=3,b=4;则条件表达式"a

相关文档