c语言程序设计试题库 下载本文

内容发布更新时间 : 2024/12/24 9:16:24星期一 下面是文章的全部内容请认真阅读。

52.以下findmin返回数组s中最小元素的下标,数组中元素的个数由t传入,请填空。

findmin(int s[ ], int t) { int k, p; for(p=0,k=p; p

53.以下程序统计从终端输入的字符中每个小写字母的个数,num[0]中以及统计字母a的个数,其它依次

类推。用#号结束输入,请填空。 #include “stdio.h” #include “ctype.h” main()

{ int num[26]={0}, i; char c; while((c=getchar())!=’#’) if(islower(c)) num[ ]+=1; for(i=0; i<26; i++)

if(num[i])printf(“%c : %d\\n”,i+’a’,num[i]); }

54.以下程序的输出结果是( )。

main( )

{ int arr[10],i,k = 0;

for (i = 0;i < 10;i ++) arr[i] = i; for (i = 0;i < 4;i ++) k += arr[i] + i; printf (“%d\\n”,k); }

55. 以下函数reverse是用来将字符数组的内容置逆。请填空。

reverse( char a[ ] ) { int i,c,j;

for(i=0,j=strlen(a)-1;i

{ c=a[i]; ;a[j]=c; } }

56. 以下程序是用来判断一个字符串是否回文,回文是指一个字符串正读和反读都一样,如lever1等。请填空。

include “string.h” main() { char str[80]; int i,k,flag=1; gets(str); k=strlen(str); for(i=0;i

{if(str[i]!=str[ ]) {flag=0; break ;} if(flag) printf(“Yes\\n”); else printf(“No\\n”); }

57. 以下程序是用选择法对数组中10个整数由小到大排序。请填空。

main() { int i,j,k,a[10]={23,45,90,34,91,45,1,18,56,24};

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

{ k=i;

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

if(a[j]

{t=a[k];a[k]=a[i];a[i]=t;}

}

printf(“the storted array;\\n”); for(i=0;i<10;i++)

printf(“%d”,a[i]); } 58. 以下程序是将一个字符串按逆序存放,请填空。

include “stido.h” main() { char str[80],m; int i,j; gets(str);

for(i=0,j= ;i

{if(str[i]!=str[ ]) {flag=0; break ;} if(flag) printf(“Yes\\n”); else printf(“No\\n”); }

59.以下程序的输入结果是( )

#include “stdio.h”

void fun(char *a1,char *a2,int n) { int k;

for(k=0;k

a2[k]=(a1[k]-‘A’-3+26)&+‘A’; a2[n]=’\\0’; } main()

{ char s1[5]= “ABCD”, s2[5]; fun(s1,s2,4); puts(s2); }

60.下面pi函数的功能是,根据以下公式返回满足精度∑要求的π的值。请填空。 π/2=1+1/3+1/3*2/5+1/3*2/5*3/7+ ?? double pi(double eps) { double s=0.0,t=1.0;

int n;

for (n=1; t>eps; n++) { s+=t; t= ; }

return (2.0*t); }

61. 在C语言中,实型变量可以分为 型、 型。 62. 在C语言中,表示一个实数的两种形式为 和 。

63. C语言的运算符可分为以下几类: 运算符、 关系运算符、 运算符、赋值运算符、位运算符、逗号运算符等。 64. 写出下面各表达式的值。

1/2.0

(int)1.0/2

65. 已知在ASCII码中,字母A的序号是65,以下程序的输出结果是 。

#include main()

{char c1=’B’,c2=’C’; printf(“%d,%d\\n”,c1,c2); }

66. 当a=3,b=4,c=5时,写出下列各式的值。

a&&b的值为 ,!a&&b的值为 ,a||c的值为 ,!a||c的值为 。 67. 假定w、x、y、z、m均为int型变量,有如下程序段: w=4; x=3; y=2; z=1; m=(w

m=(m

则该程序运行后,m的值是 。

68.以下的输出结果是 。 main() { short i; i=-1;

printf( “\\ni:dec=%d,oct=%o,hex=%x,unsigned=%u\\n”,i,i,i,i); }

69. 以下的输出结果是 。 main()

{ char c= ‘A’;

printf( “c:dec=%d, ASCII=%c\\n”,c,c); }

70.以下的输出结果是 。 main()

{ int x=1,y=2;

printf( “x=%d y=%d * sum * =%d\\n”,x,y,x+y); printf( “10 Squared is : %d\\n”,10*10); }

71. 假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+= ; b=a- ; a-= ;

72. 若x为int型变量,则执行以下语句后的x 值为 。 x=7; x+=x-=x+x;

73.下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。请填空。 int n=0,c; c=getchar();

while(____) {

if(_____)n++; c=getchar(); }

74.下面程序的功能是用“辗转相除法”求两个正整数的最大公约数。请填空。 #include main() {int r,m,n;

scanf(\ if(m

while(r){m=n;n=r;r=______;} printf(\ }

75.下面程序的运行结果是_________. #include main()

{int a,s,n,count; a=2;s=0;n=1;count=1;

while(count<=7){n=n*a;s=s+n;++count;} printf(\ }

76.下面程序段的运行结果是_________. i=1;a=0;s=1;

do{a=a+s*i;s=-s;i++;}while(i<=10); printf(\

77.下面程序段的运行结果是_______. i=1;s=3; do{s+=i++;

if(s%7==0)continue; else ++i; }while(s<15); printf(\

78. 设 i,j,k 均为 int 型变量 , 则执行完下面的 for 循环后,k 的值为 _____________

for(i=0,j=10; i<=j; i++,j--) k=i+j;

79. 下面程序的功能是 : 计算 1 到 10 之间奇数之和及偶数之和 , 请填空。

#include main()

{ int a, b, c, i; a=c=0;

for(i=0;i<=10;i+=2) { a+=i;

_____________ ; c+=b; }

printf(\偶数之和 =%d\\n\printf(\奇数之和 =%d\\n\}

80. 下面程序的功能是 : 输出 100 以内能被 3 整除且个位数为 6 的所有整数 , 请填空。

#include main() { int i, j;

for(i=0; _____________ ; i++) { j=i*10+6;

if( _____________ ) continue; printf(\} }

81、请读程序片段: main() { int a, b;

for(a=1;b=1;a<=100;a++) { if(b>=20) break;

if(b%3==1) {b+=3; continue; } b-=5; }

printf(\}

程序的输出结果是( )

82、t为int类型,进人下面的循环之前,t的值为0 while( t=l ) { ? } ,循环控制表达式的值为 83、标准函数 fgets(s, n, f) 的功能是 。 84、rewind函数的作用是______ __。

85、当对__ __数组元素赋初值,可以不指定数组长度。

86、若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是__ __。 87、若想要通过异或运算对变量a进行高4位求反,低四位不变,则b应为_ ___。 88、若给定条件表达式(M)?(a++):(a--)则 其中表达式M和________等价。

89、若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元: int *p; p=__________ malloc( sizeof(int));

90、以下程序的输出结果是____ 。main() {int x,y,z; x=y=z=0; ++x&&++y||++z; printf(“%d,%d,%d\\n”,x,y,z); }

91、设一整型(int)变量占用2个字节则下述共同体变量x所占用内存字节数为________。 union exp { int i; float j; double k; }x;