C语言练习题-填空题(带答案) 下载本文

以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数.例如,输入的字符串为:556,则输出十进制整数366.请填空.  #include \ main()

 { char *p, s[6];  int n;  p=s;  gets(p);  n=*p-'0';

while( 【1】 !='\\0') n= 【2】 ;  printf(\ }

答案:

=======(答案1)======= *(++p)

=======(答案2)======= n*8+*p-'0'

第141题 (1.0分) 题号:615 下面程序的输出结果为【1】. #include

int x[2][3]={1,2,3,4,5,6}; main() {int *p;

for(p=&x[0][0];p<&x[0][0]+6;p++) { if((p-&x[0][0])%3==0) printf(\ } }

答案:

=======(答案1)======= 1 4

第142题 (1.0分) 题号:623 #include main()

{ int a[]={1,2,3,4,5,6},*p; p=a;

*(p+3)+=2;

printf(\

}

结果为:【1】.

答案:

=======(答案1)======= 1,6

第143题 (1.0分) 题号:612 以下程序段的运行结果是【1】. char *p=\int a=11,b=10,c; c=a%b; p+=3;

printf(p,c,a,b);

答案:

=======(答案1)======= a=1,b=11

第144题 (1.0分) 题号:616 以下程序的运行结果是【1】. main()

{ int x[5]={2,4,6,8,10},*p,**pp; p=x; pp=&p;

printf(\ printf(\}

答案:

=======(答案1)======= 2,4

第145题 (1.0分) 题号:620 当运行以下程序时,从键盘输入 apple<回车> cat<回车>

则以下程序的运行结果是【1】. #include \main()

{ char s[80],*p; p=s;

gets(p);

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

if(*p=='a') {p++; gets(p);} else break; puts(s); }

答案:

=======(答案1)======= acat

第146题 (1.0分) 题号:619 当运行以下程序时,从键盘输入 control<回车> cat<回车> bed<回车> -1<回车>

则以下程序的运行结果是【1】. #include \main()

{ char s[80],*p; p=s; gets(p);

while(*p!='-')

{ if(*p=='a'||*p=='b') puts(p); gets(p); } }

答案:

=======(答案1)======= bed

第147题 (1.0分) 题号:609

完成下列程序.求一个字符串的长度,用字符数组实现. main()

{int len=0;

char str[20],*p; scanf(\ p=str;

while(*p!='\\0') { 【1】;【2】;}

printf(\

}

答案:

=======(答案1)======= p++

=========或========= len++

=========或========= p+=1

=========或========= p=p+1

=========或========= len=len+1

=========或========= len+=1

=======(答案2)======= p++

=========或========= len++

=========或========= p+=1

=========或========= p=p+1

=========或========= len+=1

=========或========= len=len+1

第148题 (1.0分) 题号:618 以下程序段的运行结果是【1】. char a[ ]=\int i=0; p=a;

while(*p)

{ if(i%2==0) *p='*'; p++; i++; }

puts(a);

答案:

=======(答案1)======= *2*4*6*8*