c语言程序核心功能描述,《C语言程序设计》核心试题(9-1)

#include

#define N 6

main()

{ char c[N];

int i=0;

for( ;i

for( i=0;i

}

(50) 以下程序运行后,输出结果是A)

8B)

7C)

6D) 5

#include

ss(char *s)

{ char *p=s;

while(*p) p++;

return(p-s);

}

main()

{ char *a="abded";

int i;

i=ss(a);

printf("%d\n",i);

}

(51) 以下程序运行后,输出结果是A)

6385B)

22C)

33D) 693825

main()

{ char ch[2][5]={'693","825"},*p[2];

int i,j,s=0;

for(i=0;i<2;i++) p[i]=ch[i];

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

for(j=0;p[i][j]='0' && p[i][j]<='9';j+=2)

s=10*s+p[i][j]-'0';

printf("%d\n",s);

}

(52) 以下程序运行后,输出结果是A)

1234567B)

7654321C)

1711717D) 7177171

#inchude 

#inchude 

fun(char *w, int n)

{ char t,

*s1,*s2;

s1=w: s2=w+n-1;

while(s1

{ t=*s1++;

*s1=*s2--;

*s2=t;

}

}

main()

{ char *p;

p="1234567";

fun(p,strlen(p));

puts(p);

}

(53) 以下程序运行后,如果从键盘上输入:

book

book

则输出的结果是A)

*8B)

#9C)

#6D) *9

#include

main()

{ char a1[80],a2[80],*s1=a1, *s2=a2;

gets(s1); gets(s2);

if(! strcmp(s1,s2)) printf("*");

esle printf("#");

printf("%d/n",strlen(strcat(s1,s2)));

}

(54) 给出以下定义:

char x[ ]="abcdefg";

char y[ ]={'a','b','c','d','e','f','g'};则正确的叙述为A) 数组X和数组Y等价B) 数组x和数组Y的长度相同C) 数组X的长度大于数组Y的长度D) 数组X的长度小于数组Y的长度(55) 有以下程序main()

{ char a[]="programming",

b[]="language";

char *p1,*p2;

int i;

p1=a; p2=b;

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

if(*(p1+i)==*(p2+i)) printf("%c",*(p1+i));

}

输出结果是A)

gmB)

rgC)

orD) ga

(56) 若有以下定义:

char s[20]="programming",*ps=s;

则不能代表字符o的表达式是A)

ps+2B)s[2]C)

ps[2]D)ps+=2,*ps

(57) 若有以下定义和语句:

char *s1="12345",*s2="1234";

printf("%d\n",strlen(strcpy(s1,s2)));则输出结果是

A)

4B)5C)9D)10

(58) 下面程序的输出是 main()

{ char *s="121";

int k=0, a=0, b=0;

do {k++;

if(k%2==0) {a=a+s[k]-'0';

continue;} b=b+s[k]-'0';

a=a+s[k]-'0';

}

while (s[k+1]);

printf("k=%d a=%d b=%d\n",k,a,b);A)k=3 a=2

b=3B)k=3 a=3

b=2C)k=2 a=3

b=2D)k=2 a=2 b=3

(59) 以下程序输出的结果是#include

#include

main()

{ char w[][10]={"ABCD","EFGH","IJKL","MNOP"},K;

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

printf("%s\n",&w[k][k]);

}A)ABCD B)ABCDFGH EFGKL IJMC)EFG D)FGHJK

KLO (60) 若有以下程序片段:

char str[]="ab\n\012\\\"";

printf(%d",strlen(str));

上面程序片段的输出结果是 A)3B)4C)6D)12

(61) 函数调用:strcat(strcpy(str1,str2),str3)的功能是A) 将串str1复制到串str2中后再连接到串str3之后B) 将串str1连接到串str2之后再复制到串str3之后C) 将串str2复制到串str1中后再将串str3连接到串str1之后D) 将串str2连接到串str1之后再将串str1复制到串str3中(62) 不能把字符串:Hello!赋给数组b的语句是A) char

b[10]={'H','e','l','l','o','!'};B) char b[10];b="Hello!";C) char

b[10];strcpy(b,"Hello!");D) char b[10]="Hello!";

(63) 下面程序的输出是main()

{ int x=3,y=6,a=0;

while(x++!=(y+=o1))

{ a+o=1;

if(y

#include

main()

{ char ss[10]="12345";

strcat(ss,"6789");

gets(ss);printf("%s\n",ss);

}A)

ABCB)

ABC9C)

123456ABCD) ABC456789

(64) 下面程序的输出是main()

{ char *a="12134211";

int v1=0,v2=0,v3=0,v4=0,k;

for(k=0;s[k];k++)

switch(s[k])

{ default:v4++;

case '1': v1++;

case '3': v3++;

case '2': v2++; }

printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);

}A)

v1=4,v2=2,v3=1,v4=1B) v1=4,v2=9,v3=3,v4=1C) v1=5,v2=8,v3=6,v4=1D) v1=8,v2=8,v3=8,v4=8

(65) 当执行下面程序且输入:ABC时,输出的结果是#include

#include

main()

{ char ss[10]="12345";

gets(ss);printf("%s\n",ss); }A)

ABCB)

ABC9C)

123456ABCD) ABC456789

(66) 下面程序的输出是#include

main()

{ char*a="abcdefgh";

fun(a);puts(a); }

fun (char * s)

{ int x=0,y;char c;

for(y=strlen(s)-1;x

c=s[x];s[x]=s[y];s[y]=c;} }A)abcdefghB)hgfdecbaC)dcbahgfeD)hgfedcba

(67) 下述对C语言字符数组的描术中错误的是A) 字符数组可以存放字符串B) 字符数组中的字符串可以整体输入、输出C) 可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D) 不可以用关系运算符对字符数组中的字符串进行比较(68) 设有如下函数定义:

int f(char *s)

{ char *p=s;

while(*p!='\0') p++;

return(p-s); }如果在主程序中用下面的语句调用上述函数,则输出结果为printf("%d\n",f("goodbey!"));A)

3B)

6C)

8D) 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值