上海计算机二级C语言模拟题,上海计算机二级考试计算机c语言模拟题.pdf

计算机二级模拟考试试题

D

选D。Stract是剪切 “abc”到a 的意思 此 B中的a[i]=0因为a是一个字符,所以,0作为ASCII码输

入,因此是a[i]有’\0’的意思,作为字符串的结尾

A scanf(“格式说明”,存储地址);因为ch是一个数值,&ch是ch这个字符的地址,所以选A

C。Switch里面,如果没有break,则执行除了满足本身的case之外,还要执行这句一下的语句直到

switch语句结束。此外,60/10这个数,60是int类型,10 也是int类型,也就是说,两个相除还是

int,故没有小数。Eg:69/10=6

B。Include 或者include”stdio.h”都是可以的

i<100则i=100这次不执行,遇到这种问题,把100换成1看看多少次依次类推就可以了

A.Fopen中”w”是为输出打开一个文本文件,”wb” 为输出打开一个二进制文件,”r” 输入打开一

个文本文件,”rb” 为输入打开一个二进制文件

B.Continue 结束本次循环,而break,结束整个循环,exit退出程序,return一般用于函数调用,

返回一个值

D。int func(int a[],int n)中,int a[]表示要输入一个数组,而在数组中,a表示数组的首地址。

并且,a[10]这个答案,已经超出了表示范围,

C。因为要使a里面存 ’ 符号需要写a=’’’’ ;也就是要注明两次’符号才可以。而16本身是个字符串,加

入单引号也是不对的。字符串需要用“”指明,而字符要用’’指明

D。数组中定义n个,而实际计数是0~n-1

C。同上

C。指针,head,p,可以视为指向一个地址的指针,里面存放的是地址。而p->next也是存放地址的。

也就是说,这道题的操作的结果就是要将head指向p,p->next指向一开始head所指向的位置,进而

串成一个链表。

A。21%9=3 3/float(2)=1.5[转制,有一个浮点则得数为浮点,也就是带小数]

后面4/5=0 0*5=0 1.5+0=1.5

D *代表取后面地址的数值。执行完while(*p!=3)后,p执政指向3 (a[1]),即*p=3,故要指向7则

指针需要移动两位。*(p+2)=7

程序功能:函数f的功能是从字符串中删除所有的数字字符,并返回删除的个数;主程序调用函数f

删除字符串str中的数字字符,并输出删除的字符数。

源程序:

#include

#include

int f(char s[])

{ int i=0;

____1____; int count=0

while(s[i]!='\0')

if(s[i]>='0'&&s[i]<='9')

{

strcpy(s+i,s+i+1);

count=count+1; /* count表示删除的数字字符数 */

}

else

____2____; i++

return ____3____; count

}

void main()

{ char str[80];

int m;

printf("输入字符串:");

gets(str);

m=____4____;f(str)

printf("删除数字后的字符串:");

puts(str);

printf("删除的数字字符个数:%d",____5____); m

}

输入一行字符串,分别统计字符串中各元音字母(AEIOU)的个数(不分大小写)。

源程序:

#include

void main()

{ char a[80];

int n[5]={0,0,0,0,0}; /* 数组n存放各元音字母个数 */

____1____; int i

gets(a);

for(____2____; a[i]!='\0'; i++) i=0

switch(____3____) a[i]

{

case 'A':

case 'a': n[0]++; break;

case 'E':

ca

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值