(31)現(xiàn)有如下程序段
#include "stdio.h"
int *fun(int *a,int *b)
{int c;
c=*a%*b;
return &c;}
main()
{int a=5,b=19,*c;
c=fun(&a,&b);
printf("%d\n",++*c);}
則程序段執(zhí)行后的結(jié)果為
A)8
B)7
C)6
D)5
正確答案: C
(32)現(xiàn)有int a,*b;,b=&a;,則下列運(yùn)算錯(cuò)誤的是
A)*&a
B)&*a
C)*&b
D)&*b
正確答案: B
(33)現(xiàn)有如下程序段
#include "stdio.h"
main()
{ int k[30]={12,324,45,6,768,98,21,34,453,456};
int count=0,i=0;
while(k[i])
{ if(k[i]%2==0‖k[i]%5==0)count++;
i++; }
printf("%d,%d\n",count,i);}
則程序段的輸出結(jié)果為
A)7,8
B)8,8
C)7,10
D)8,10
正確答案: D
(34)現(xiàn)有如下定義語句
int*p,s[20],i;
p=s;
表示數(shù)組元素s[i]的表達(dá)式不正確的是
A)*(s+i)
B)*(p+i)
C)*(s=s+i)
D)*(p=p+i)
正確答案: C
(35)閱讀如下程序段,這個(gè)程序在編譯的時(shí)候會(huì)有一個(gè)警告,下列關(guān)于這個(gè)警告敘述正確的是
#include "stdio.h"
#define N 10
int *fun(int a[N],int n)
{ int i,b[N];
for(i=0;i<n;i++)
b[i]=a[i];
return(b);}
main()
{ int a[N]={12,34,45,5,6,34,4,655,2};
int *k;
k=fun(a[N],5);
printf("%d\n",*k);}
A)指針k沒有指向任何對(duì)象而成為"無向指針",所以這里會(huì)產(chǎn)生警告
B)return語句不應(yīng)該有括號(hào),所以在這里會(huì)有警告
C)return語句的返回值類型與指針k的基類型不一致,這里會(huì)產(chǎn)生警告
D)數(shù)組賦值的時(shí)候沒有把數(shù)組全部都賦初值,所以在這里會(huì)有警告
正確答案: A
(36)有如下定義語句:int aa[][3]={12,23,34,4,5,6,78,89,45};,則45在數(shù)組aa中的行列坐標(biāo)各為
A)3,2
B)3,1
C)2,2
D)2,1
正確答案: C
(37)現(xiàn)有如下程序段
#include "stdio.h"
main()
{int a[5][6]={23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,1};
int i=0,j=5;
printf("%d\n",*(&a[0][0]+2*i+j-2));}
則程序的輸出結(jié)果為
A)21
B)78
C)23
D)28
正確答案: A
(38)下列程序的輸出結(jié)果是
#include "stdio.h"
#define N 3
#define M 3
void fun(int a[M][N])
{printf("%d\n",*(a[1]+2));}
main()
{int a[M][N];
int i,j;
for(i=0;i<M;i++)
for(j=0;j<N;j++)
a[i][j]=i+j-(i-j);
fun(a);}
A)3
B)4
C)5
D)6
正確答案: B
(39)下列關(guān)于字符串的說法中錯(cuò)誤的是
A)在C語言中,字符串是借助于字符型一維數(shù)組來存放的,并規(guī)定以字符′\0′作為字符串結(jié)束標(biāo)志
B)′\0′作為標(biāo)志占用存儲(chǔ)空間,計(jì)入串的實(shí)際長度
C)在表示字符串常量的時(shí)候不需要人為在其末尾加入′\0′
D)在C語言中,字符串常量隱含處理成以′\0′結(jié)尾
正確答案: B
(40)有下面程序段
#include "stdio.h"
#include "string.h"
main()
{char a[3][20]={{"china"},{"isa"},{"bigcountry!"}};
char k[100]={0},*p=k;
int i;
for(i=0;i<3;i++)
{ p=strcat(p,a[i]);}
i=strlen(p);
printf("%d\n",i);}
則程序段的輸出結(jié)果是
A)18
B)19
C)20
D)21
正確答案: B
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |