当前位置:首页 > C语言 数组和指针练习题
{ int a, b, c; sub(10, 15, &a); sub(6, a, &b); sub(a, b, &c);
printf(\; }
A、5, 1, 6 B、-5, -11, -6 C、-5, 11, 6 D、5, -1, -6
181、设有变量定义和函数调用语句:int a=20; print_value(&a);,下面函数的输出结果是____
void print_value(int *x)
{ printf(\; } A、20 B、21 C、变量a的地址 D、随机值
182、语句int (*ptr)( );的含义是____
A、ptr是指向一维数组的指针变量 B、ptr是指向int 型数据的指针变量
C、ptr是指向函数的指针,该函数返回一个int 型数据
D、ptr是一个函数名,该函数的返回值是指向int 型数据的指针
183、 若有函数max (a ,b) ,并且已使函数指针变量p 指向函数 max ,则利用函数指针
调用 max 函数的正确形式是____
A、(*p ) max (a , b) B、*p max(a, b) C、p-> max (a, b) D、 ( *p ) (a, b ) 184、若有定义:int (*p)( );,则指针p___
A、代表函数的返回值 B、指向函数的入口地址 C、表示函数的类型 D、表示函数返回值的类型
185、下面程序的运行结果是____
main( )
{ int b[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *q=b;
printf(\; }
A、1 B、2 C、3 D、4 187、下面程序的运行结果是____
#include
{ int a[3][3]={{2},{4},{6}}; int k,*q=&a[0][0]; for(k=0;k<2;k++) { if(k= =0)
a[k][k+1]=*q+1; else ++q;
printf(“%d”,*q); } }
A、26 B、23 C、36 D、33 188、下面程序的运行结果是____
void prt(int *a)
{printf(“%d\\n”,++*a);} main()
{ int b=25; prt(&b); }
A、26 B、24 C、25 D、23 189、下面程序的运行结果是____
main( )
{ int a[3][4]={1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23}; int (*q)[4]=a, i, j, n=0; for (i=0; i<3; i++) for (j=0; j<2; j++) n=n+*(*(q+1)+j); printf(\; }
A、68 B、99 C、60 D、108 190、下面程序的运行结果是____
#include
{ char a=\; a++; b++;
printf(\; }
A、零 B、正数 C、负数 D、无确定值
191、若运行以下程序时,从键盘上输入OPEN THE DOOR<回车>,则程序的运行结果是____
#include
{ if(*ch<='Z'&&*ch>='A')
*ch-='A'-'a'; return *ch; } main()
{ char s1[81],*q=s1; gets(s1); while(*q) { *q=f(q); putchar(*q); q++; }
putchar('\\n'); }
A、oPEN tHE dOOR B、OPEN THE DOOR C、open the door D、Open The Door
192、下列程序的运行结果是____
#include
void f (float *q1, float *q2, float *a) { a=(float *)calloc(1, sizeof(float));
*a=*q1+*(q2++); }
main()
{ float a[2]={1.1, 2.2}, b[2]={10.0, 20.0}, *s=a; f(a, b, s);
printf(\; }
A、1.100000 B、11.100000 C、12.100000 D、21.100000 193、下列程序的运行结果是____
#include
q1=s; q2=s+n-1; while (q1 { a=*q1++; *q1=*q2--; *q2=a; } } main() { char b[ ]=”ABCDEFG”; f(b, strlen(b) ); puts(b); } A、GAGGAGA B、AGAAGAG C、GFEDCBA D、AGADAGA 194、以下程序的运行结果是____ main ( ) { char *q =\; printf (\; } A、Is , Is i B、Is , Is it C、Is It , Is it D、Is it , Is 195、下面程序的功能是从输入的十个字符串中找出最长的那个串。请选择正确内容填空。 # include { char str[N][81], *sp; int i ; for (i=0 ; i gets ( str[i] ); sp=__①__; for ( i=1 ; i if ( strlen (sp ) sp=__②__; printf (\; } ① A、str[i] B、&str[i][0] C、str[0] D、str[N] ② A、str[i] B、str[i][0] C、str D、str[N] 196、下面程序的功能是将八进制正整数组成的字符串转换为十进制整数。请选择正确内容填空。 # include { char *p , s[6] ; int n ; p=s; gets (p ) ; n=__①__; while (__②__!='\\0' ) n=n*8+ *p –'0'; printf (\; } ①、A、0 B、*p C、*p-'0' D、*p+'0' ②、A、*p B、*p++ C、*(++p) D、p 197、函数count 的功能是统计子串substr 在主串str 中出现的次数。请选择填空。 count(char *str,char *substr) { int i,j,k,num=0; for(i=0;__①__; i++) for(__②__,k=0;substr[k]= =str[j];k++,j++) if(substr[__③__ ]= ='\\0' ) { num++; break; } return(num); } ① A、str[i]= =substr[i] B、str[i]!='\\0' C、str[i]= ='\\0' D、str[i]>substr[i] ② A、j=i+1 B、j=i C、j=0 D、j=1 ③ A、k B、k++ C、k+1 D、++k 198、下面程序的功能是在字符串str中找出最大的字符并放在第一个位置上,并将该字符前的原字符往后顺序移动,如串“oalne”。请选择填空。 # include { char str[80], *p, max, *q ; p=str ; gets (p); max=*(p++) ; while ( *p!='\\0' ) { if ( max<*p ) { max=*p ; __①__; } p++; } p=q ; while (__②__) { *p=*( p-1 ) ; __③__; } *p=max ; puts ( p ); } ① A、p++ B、p=q C、q=p D、q++ ② A、p>str B、p>=str C、*p>str[0] D、*p>=str[0]
共分享92篇相关文档