C及C++每日练习(1)

一.选择:

1.以下for循环的执行次数是()

 for(int x = 0, y = 0; (y = 123) && (x < 4); x++);

A.是无限循环 B.循环次数不定 C.4次 D.3次

对于for循环,其组成部分可以四个部分:
 

for(初始化;循环进行条件;调整)
{
   循环语句//
}

对于上面给出的for循环的循环条件,由于中间用于&&连接,因此,必须左右的条件都为真,循环才能继续进行。因此,当循环进行五次时,此时的y==4,不满足条件,退出循环,因此答案选择:C循环四次

2.以下程序的运行结果是()

 #include <stdio.h> 
int main(void) { 
    printf("%s , %5.3s\n", "computer", "computer"); 
    return 0; 
}

A.computer , puter

B. computer , com

C. computer , computer

D.computer , compu.ter

此题目的考点主要在于打印的格式,即题目中的%5.3s对于这种%m.ns格式的格式。其中m表示输出字符串的宽度,n表示左起截取字符串中的多少字符,且对齐格式为右对齐,如果字符不足则用空格补足。但是也存在特殊情况:

当字符串长度>n>m,此时m的作用不再生效。即输出左起截取字符串中的前n个字符。

n>字符串长度时,直接从头打印至尾部。

例如本题中,m==5,n==3,字符串长度<n,所以上述的打印格式应该为:打印字符串的长度5,从左截取字符串中的3个字符,由于截取的字符小于需要打印的字符,因此,用空格补齐,由于存在右对称,所以打印结果为:

computer,空格空格com

答案选择B,不过此处的答案并没有体现右对齐和补齐空格。

3.下列main()函数执行后的结果为()

int func(){  
 int i, j, k = 0; 
 for(i = 0, j = -1;j = 0;i++, j++){ 
  k++; 
 } 
 return k; 
} 
int main(){ 
    cout << (func()); 
    

A.-1

B. 0

C.1

D.2 

在上面给出的代码中,调用了func()函数,结果打印func()函数的返回值。在func()函数的循环中,由于j==-1,因此,并不符合循环的判断条件,因此不会进入循环,所以直接返回0.。答案选择B

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

起床写代码啦!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值