C语言程序设计

2023-03-31 01:49:17   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《C语言程序设计》,欢迎阅读!
程序设计,语言
1.有以下程序 main()

{ char s[]="\n123\\";

printf("%d,%d\n",strlen(s),sizeof(s)); }

执行后输出结果是_5,6_____

解析函数strlen()用于计算字符串的长度,所给的字符串s中,'\n'是转义字符,代表一个"换行"符,'\\'表示一个反斜杠字符'\'所以字符串s的长度为5sizeof()函数是用来计算字符串所占内存的字节数,5个字符在内存中占5个字节,由于C规定,在每一个字符串末尾加一个字符结束标志'\0'以便系统判断字符串是否结束,所以该字符s所占内存的字节数为6,最终打印输出5,6。:

2.若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是___p=n___

指针变量不同于整型变量和其它类型的变量,它是用来存放地址(指针)的,不能将一个整型量(或任何其它非地址类型的数据)赋给一个指针变量,这样的赋值是不合法的。本题中的答案D就属于这种情况,所以p=n;是非法的赋值语句。

3.若有定义:char *x="abcdefghi";以下选项中正确运用了strcpy函数的是___char y[10],*s; strcpy(s=y+1, x+1);___ 选项Ax [4]是取字符e,也就是将字符复制到y中,strcpy实现的是地址的复制所以选A错误;选项B++y是错误的,不允许对常量进行自加运算y是一个确定的地址值)所以选项B 错误;选项C指针变量s指向了y向后的第5位,则存放x时会出现越界问题,所以选项C错误;选项D中,指针变量s指向了y向后的第一位,此时s可存放数据的长度9,而地址"x+1"起的字符串的地址长度也刚好为9(包括"\0"),所以开始复制不会出现地址越界问题。

4. fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是__非零值____

5. 若有以下程序段

int m=0xabc,n=0xabc; m-=n;

printf("%X\n",m);

执行后输出结果是___0___

Printf()函数的一般格式如下所示:

Printf("格式控制字符串",输出项清单) 格式控制字符串中包括: 1格式转换说明符:"%"开头后跟一个格式字符,它用于输出数据格式的转换与控制; 2转义字符:"\"开头后跟一个字符,用于输出某些特殊意义的字符和不可显示字符;

3其他字符:用于照原样显示的字符。printf()格式转换说明符:'%X'按实际位数输出十六进制整数。因为mn都定义为十六进制整数,且m=nm-=n;的意思是将mn的差值重新赋给m,所以m0 6. 设有

static char str[]="Beijing";


则执行

printf("%d\n",strlen(strcpy(str,"China") ) ); 后的输出结果为__5____

解析;在执行printf()函数前,数组str的长度是7,但是使用strcpy()函数将新的值赋给str后,strlen()函数返回的应当是现在的str字符串的字符个数,即是5 7. 若有一些定义和语句 #include

int a=4,b=3,*p,*q,*w; p=&a;q=&b;w=q;q=NULL;

则以下选项中错误的语句是__*q=0____

由于指针变量q赋值为NULL,即空地址,如果给空地址所指向的存储空间赋值的话,系统会出错,提示为:Null point assignment!

8. int a=12,则执行完语句a+=a-=a*a后,a的值是_-264_____

第一步:a*a=144 (此时a=12

第二步:a-=144相当于a=a-144a=a-144=-132 (此时a=-132 第三步:a+=a相当于a=a+aa=a+a=-264

所以该表达式最后的值应当为-264

9. 若有如下程序段,其中sabc均已定义为整型变量,且ac均已赋值(c大于0

s=a;

for(b=1;b<=c;b++) s=s+1;

则与上述程序段功能等价的赋值语句是_s=a+c;_____

本题s的初值是a,然后b1循环到c,每循环一次,s都加1,也就是到了c,加了1*c,所以程序所实现的功能实际上是s=a+c

10. 以下叙述中正确的是__C程序实现的算法可以没有输入但必须要有输出____ 算法的特性中包括"有零个或多个输入""有一个或多个输出"这两个特性。输入是指执行算法时从外界取得必要的信息一个算法可以有两个或多个输入,但也可以没有输入;一个算法得到的结果就是算法的输出,没有输出的算法是没有意义的,所以一个算法必须至少有一个输出。

11. 算法的特性中包括"有零个或多个输入""有一个或多个输出"这两个特性。输入是指执行算法时从外界取得必要的信息一个算法可以有两个或多个输入,但也可以没有输入;一个算法得到的结果就是算法的输出,没有输出的算法是没有意义的,所以一个算法必须至少有一个输出。 #include

float fun ( int n ) {

/************found************/ float A=1.0 ; int i;

/************found************/ for (i=1; i<= n; i++) A = 1.0/(1+A);

/************found************/ Return A ;


本文来源:https://www.wddqxz.cn/bf20aa4caf45b307e87197b3.html

相关推荐