c语言%.10s是什么意思,C语言的一些基础题

1 #include

2 main()

3 { float s[5];

4 int I,sz=0;

5 for(I=0;I<5;I++)

6 scanf("%d",s+I);

7 for(I=0;I<5;I++)

8 sz+=s[I];

9 printf("\n%f",(float)sz);

10 }

A) 没有错误

B) 第4行错误

C) 第6行错误

D) 第9行错误

C s数组是实型,不能用整型输入

下列合法的数组定义是( )。

A) int a[]="string";

B) int a[5]={0,1,2,3,4,5};

C) char a="string";

D) char a[]={0,1,2,3,4,5};

D A.a[]是整形不对 B.有6个元素 C若是char a[]="string"; 就对了

以下程序段给数组所有的元素输入数据,请选择正确答案填入( )。

#include

main()

{

int a[10],i=0;

while(i<10)

scanf("%d",______);

}

A) a+(i++)

B) &a[i+1]

C) a+i

D) &a[i++]

D AC显然不对 B没有输入a[0]的值

设有:

static char str[]="Beijing";

则执行:

printf("%d\n",strlen(strcpy(str,"China")));

后的输出结果为( )。

A) 5

B) 7

C) 12

D) 14

A strcpy为字符串拷贝函数 strlen为字符串统计函数

阅读下面的程序

main()

{

inn[2],I,j,k;

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

n[I]=0;

k=2;

for(I=0;I

for(j=0;j

n[j]=n[I]+1;

printf("%d\n",n[k]);

}

上面程序的输出结果是( )。

A) 不确定的值

B) 3

C) 2

D) 1

题有问题

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

n[I]=0;

初始化n[0],n[1]为0

4次循环

for(I=0;I

for(j=0;j

n[j]=n[I]+1;

得n[0]=3,n[1]=4执行

printf("%d\n",n[2]); n[2]本身就不对,越界了

定义如下变量和数组:

int I;

int x[3][3]={1,2,3,4,5,6,7,8,9};

则下面语句的输出结果是( )。For(I=0;I<3;I++)

printf("%d ",x[I][2-I]);

A) 1 5 9

B) 1 4 7

C) 3 5 7

D) 3 6 9

A I=0输出(0)(2)=3,I=1输出X(1)(1)=5,I=2输出X(2)(0)=7

若有以下说明:

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};

char c='a',d,g;

则数值为4的表达式是( )。

A) a[g-c]

B) a[4]

C) a['d'-'c']

D) a['d'-c]

D A是不确定的值,B得5,C得2

Printf("%d\n",strlen("\t\"\065\xff\n));

A) 5

B) 14

C) 8

D) 输出项不合法,无正常输出

A 有5个逃逸字元

\t 水平制表符Tab

\" 双引号

\065 以8进制表示的5

\xff 以16进制表示的无名字符。打印出来显示为占两个字符位的空格

\n 换行符

若有以下定义和语句:

char s[10];

s="abcd";

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

则输出的结果是( )。

A) 输出abcd

B) 输出a

C) 输出abcd

D) 编译不通过

D 字符串不能负值给地址应为s[]="abcd";

下述程序输出的结果是( )。

#include

main()

{

char ch[7]={"65ab21"};

int I,s=0;

for(I=0;ch[I]>='0'&&ch[I]<='9';I+=2)

s=10*s+ch[I]-'0';

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

}

A) 12ba56

B) 6521

C) 6

D) 62

C 第一次ch[0]=6第二次ch[2]=a跳出 s=6

下述函数引用中,( )是含有错误的。其中s的定义如下:

char s[10];

A) scanf("%10s",s);

B) printf("%.5s",s);

C) puts(s+3);

D) gets(s);

C 若字符串s[10]只有一个字符 如a \0,s+3指向的s[3]未分配内存

定义如下数组s:

char s[40];

若准备将字符串“This is a string.”记录下来,( )是错误的输入语句。

A) gets(s+2);

B) scanf("%20s",s);

C) for(I=0;I<17;I++)

S[I]=getchar();

D) while((c=getchar())!='\n')

s[I++]=c;

C 只是输入This is a string.没有输入\n

温馨提示:答案为网友推荐,仅供参考

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值